drill-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Westin (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (DRILL-3493) Alter session command with an option to cancel query in a particular phase of execution
Date Mon, 24 Aug 2015 23:20:45 GMT

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

Chris Westin commented on DRILL-3493:

I talked this over with [~sudheeshkatkam], and we don't think it will be useful if we implement
this exactly as described. This is because of how the exception/pause injection code (which
this would use) works. 

Specifically, delivery of events/messages to FragmentExecutors (under which all this work
takes place) is serialized. That severely reduces or eliminates the utility of this, in this
form. That's because when the <execution phase> is detected, the cancellation message
would be sent. But that happens under an existing RPC message handler. Because of the serialization
of message delivery to the executor (for any particular query), the cancellation message won't
be delivered until the current message handler finishes. In other words, the cancellation
won't take place until whatever is currently executing finishes, which is too late to be useful
(in a single-node case, the query could be over).

We need some more time to think about a way this can be done usefully, which might require
support from the test framework itself.

> 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

This message was sent by Atlassian JIRA

View raw message