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

mahesh kumar behera commented on HIVE-20549:
--------------------------------------------

ya ..saw that part of the code where check is there for user id. Missed that 
during review. 

One more point , why the behavior is different for operations found using query 
id and query tag ? If its found using query id, then yarn jobs are not killed 
if cancel is not successful. But for operations found using query tag, kill job 
is done even if the cancel operation return false.

> Allow user set query tag, and kill query with tag
> -------------------------------------------------
>
>                 Key: HIVE-20549
>                 URL: https://issues.apache.org/jira/browse/HIVE-20549
>             Project: Hive
>          Issue Type: Bug
>            Reporter: Daniel Dai
>            Assignee: Daniel Dai
>            Priority: Major
>             Fix For: 4.0.0, 3.2.0
>
>         Attachments: HIVE-20549.1.patch, HIVE-20549.2.patch
>
>
> HIVE-19924 add capacity for replication job set a query tag and kill the 
> replication distcp job with the tag. Here I make it more general, user can 
> set arbitrary "hive.query.tag" in sql script, and kill query with the tag. 
> Hive will cancel the corresponding operation in hs2, along with Tez/MR 
> application launched for the query. For example:
> {code}
> set hive.query.tag=mytag;
> select ..... -- long running query
> {code}
> In another session:
> {code}
> kill query 'mytag';
> {code}
> There're limitations in the implementation:
> 1. No tag duplication check. There's nothing to prevent conflicting tag for 
> same user, and kill query will kill queries share the same tag. However, kill 
> query will not kill queries from different user unless admin. So different 
> user might share the same tag
> 2. In multiple hs2 environment, kill statement should be issued to all hs2 to 
> make sure the corresponding operation is canceled. When beeline/jdbc connects 
> to hs2 using regular way (zookeeper url), the session will connect to random 
> hs2, which might be different than the hs2 where query run on. User can use 
> HiveConnection.getAllUrls or beeline --getUrlsFromBeelineSite (HIVE-20507) to 
> get a list of all hs2 instances.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to