[ 
https://issues.apache.org/jira/browse/DRILL-3493?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14710303#comment-14710303
 ] 

Deneche A. Hakim commented on DRILL-3493:
-----------------------------------------

The way I was thinking of implementing it doesn't involve exception/pause 
injection, apart from maybe reusing the injection sites and the activation of 
sites through an alter session command. 
We want to see what happens when the Foreman receives a user cancellation 
request when the code is in a specific state (i.e. the code reaches a 
cancellation site), the cancellation site would basically call foreman.cancel() 
directly (most likely through a separate cancellation thread to avoid any 
concurrent issues) simulating a user cancellation.
This solution has it's limitations, for example it only works for the fragments 
running on the Foreman's Drillbit, but it's a step in the right direction and 
will at least provide some way to test cancellation in a reproducible manner.

> Alter session command with an option to cancel query in a particular phase of 
> execution
> ---------------------------------------------------------------------------------------
>
>                 Key: DRILL-3493
>                 URL: https://issues.apache.org/jira/browse/DRILL-3493
>             Project: Apache Drill
>          Issue Type: New Feature
>          Components: Execution - Flow
>            Reporter: Victoria Markman
>            Assignee: Deneche A. Hakim
>            Priority: Blocker
>             Fix For: 1.2.0
>
>
> This proposal is to implement: 
> "alter session cancel <execution phase> = true|false".
> where <execution phase> is an entry point for query cancellation, like say 
> "sort" or "disk based sort" , etc.
> When this option is set, if query reaches this point, forman would issue 
> cancel.
> This way: we can easily test correctness of query cancellation in different 
> types of queries.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to