Chris Westin created DRILL-2370:
-----------------------------------

             Summary: 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: Chris Westin


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