Cancelation of operation works when "op_cancel" processed in "SRVR_multi_thread" function
And does not work, when "op_cancel" processed in "loopThread" function.
I played with stored procedure from CORE-3982
1. Execute "select ID,DUMMY from SP_PAUSE_FETCH(1000,10000000)"
2. Try to cancel after receive a first BLOCK of records.
From my point of view, the problem in structure of data packets. It does not allow a separate (parallel) loading (in SRVR_multi_thread) and executing (in loopThread) of operations.
Each packet should contain a own size.
It will allow with minimal efforts detect the "op_cancel" operation in stream of data packets at "SRVR_multi_thread" level.