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

Chris Westin commented on DRILL-2370:
-------------------------------------

[~jnadeau], it seems like your changes with the new NodeTracker handle dead 
nodes and take care of this. Do you agree?

> Missing cancellation acknowledgements leave orphaned cancelled queries around
> -----------------------------------------------------------------------------
>
>                 Key: DRILL-2370
>                 URL: https://issues.apache.org/jira/browse/DRILL-2370
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Execution - Flow
>    Affects Versions: 0.7.0
>            Reporter: Chris Westin
>            Assignee: Jacques Nadeau
>             Fix For: 0.9.0
>
>
> When a query is cancelled (say by Foreman.cancel()), Foreman moves to the 
> CANCELLED state, which indicates that cancellation is in progress. 
> Cancellation requests are sent to remote drill fragments. These should be 
> replied to via QueryManager.statusUpdate() (inherited from 
> FragmentStatusListener), which in turn updates Foreman. However, if any of 
> the cancellation requests are not acknowledged (due to drillbit failure, RPC 
> timeout, etc), then the being-cancelled query will stay that way 
> indefinitely. We need to have a way to find such queries and force them to be 
> cleaned up. This may require substituting stub listeners for some of the 
> objects involved in case cancellation acknowledgements still arrive even 
> later still -- these need to be safely invokable by the RPC layer even though 
> the query they referred to is gone.



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

Reply via email to