[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-03-14 Thread Ignite TC Bot (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16792446#comment-16792446
 ] 

Ignite TC Bot commented on IGNITE-10161:


{panel:title=-- Run :: All: No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
[TeamCity *-- Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=3306685buildTypeId=IgniteTests24Java8_RunAll]

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY \{ASYNC} '<_query_id>'_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-03-13 Thread Yury Gerzhedovich (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16791856#comment-16791856
 ] 

Yury Gerzhedovich commented on IGNITE-10161:


[~vozerov], thanks for the review and comments.
 # Fixed
 # Added such test.
 # Fixed.

 

Waiting a BOT vise.

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY \{ASYNC} '<_query_id>'_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-03-13 Thread Vladimir Ozerov (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16791448#comment-16791448
 ] 

Vladimir Ozerov commented on IGNITE-10161:
--

[~jooger], my comments:
# {{SqlParserDropIndexSelfTest}} - exception is removed from signature, but 
JavaDoc is not fixed
# I am not sure there are tests for client disconnect. Do we have them?
# {{CommandProcessor.onDisconnected}} - error message is misleading, we do not 
know whether query was cancelled or not. I would rewrite it as "Failed to 
cancel query because local client node has been disconnected from the cluster"

Otherwise looks good.

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY \{ASYNC} '<_query_id>'_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-03-07 Thread Ignite TC Bot (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16786549#comment-16786549
 ] 

Ignite TC Bot commented on IGNITE-10161:


{panel:title=-- Run :: All: No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
[TeamCity *-- Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=3249334buildTypeId=IgniteTests24Java8_RunAll]

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY \{ASYNC} '<_query_id>'_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-03-06 Thread Yury Gerzhedovich (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16785584#comment-16785584
 ] 

Yury Gerzhedovich commented on IGNITE-10161:


[~vozerov], after discussing and clarify all questions I've prepared new path.  
Could you please check it again.

Results:

2) Keep it as is.

6) Created separate task to merge all listeners for the TOPIC

7) Rewrite logic

9) Add realization onDisconnected method, howere don;t change anything else, 
due to we already have exception in case node is unavailable.

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY \{ASYNC} '<_query_id>'_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-03-05 Thread Yury Gerzhedovich (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16784386#comment-16784386
 ] 

Yury Gerzhedovich commented on IGNITE-10161:


[~ldz], Ray it ticket just about support KILL QUERY command, which run 
cancellation for any query which support it. However cancellation for DDL is 
not implemented now. It will be done in separate ticket.

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY '<_query_id>' \{ASYNC}_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-03-05 Thread Yury Gerzhedovich (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16784384#comment-16784384
 ] 

Yury Gerzhedovich commented on IGNITE-10161:


[~vozerov], Thnaks for the detailed review.

I fix part code for part of you comments:

1) Agree. Fixed.

3) Fixed.

4) Fixed.

5) Fixed.

9) Fixed. Unfortunately we have few places with use approach which I used as 
example, seems we need to fix all of such places to avoid copying such approach 
in the future.

10) Fixed.

 

For second part your comments I have objections or questions:

2) In any case we don't have guaranties that or response will be reflect real 
effect. First of all, we shouldn't remove running queries by their id from 
RunningManager after receive KILL request, because it should be done only when 
query will be really ended. If we will just check that query with given id 
exist and still running we can have at least two situation when next code 
execution will try cancel already finished query: we have two simultanious KILL 
request, both of them check that query exist, after that we return success for 
ASYNC mode, and both of them try to cancel the query. One of them either no one 
will cancel the query, however we already returned success. Or we check that 
query exists but it finished before start cancellation process. So I propose to 
rely on first check that query is running.

6) We should skill all unknown message, because it's TOPIC and we will receive 
messages which shouldn't be processed here. WE have the same approach in other 
places.

7) Removed catching any error here. However I'm not fully sure On one hand 
we have cancellation process which is Runnable and can throw any 
RuntimeException. In other hand we have hung initial node, which await message 
with result of cancellation, in case node with running query will not send 
response or not stopped. Also as I see we have approach with catch Throwable 
for onMessage methods, seems we need to check it and rewrite to avoid such 
copy-paste in the future.

8) If be honestly I don't understand why we need to do anything here. Could you 
please clarify it? May be I don't understand purpose and process for the 
onDisconnected method.

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY '<_query_id>' \{ASYNC}_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-03-04 Thread Ray Liu (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16784171#comment-16784171
 ] 

Ray Liu commented on IGNITE-10161:
--

[~jooger]

Just want to confirm, does this ticket supports cancel time consuming DDL like 
create/drop index?

Or does it supports DML only?

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY '<_query_id>' \{ASYNC}_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-03-04 Thread Ignite TC Bot (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16783535#comment-16783535
 ] 

Ignite TC Bot commented on IGNITE-10161:


{panel:title=-- Run :: All: No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
[TeamCity *-- Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=3231522buildTypeId=IgniteTests24Java8_RunAll]

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY '<_query_id>' \{ASYNC}_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-03-04 Thread Yury Gerzhedovich (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16783287#comment-16783287
 ] 

Yury Gerzhedovich commented on IGNITE-10161:


[~vozerov], 

1,2 - done

3,4 - separated tickets have been created: 
https://issues.apache.org/jira/browse/IGNITE-11452, 
https://issues.apache.org/jira/browse/IGNITE-11456 

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY '<_query_id>' \{ASYNC}_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-02-21 Thread Ignite TC Bot (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16774834#comment-16774834
 ] 

Ignite TC Bot commented on IGNITE-10161:


{panel:title=-- Run :: All: No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
[TeamCity *-- Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=3145358buildTypeId=IgniteTests24Java8_RunAll]

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY '<_query_id>' \{ASYNC}_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-02-19 Thread Yury Gerzhedovich (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16771854#comment-16771854
 ] 

Yury Gerzhedovich commented on IGNITE-10161:


[~vozerov], merged and refactored according to last master changes. Waiting TC 
Bot vise.

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY '<_query_id>' \{ASYNC}_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-02-08 Thread Yury Gerzhedovich (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16763572#comment-16763572
 ] 

Yury Gerzhedovich commented on IGNITE-10161:


[~vozerov], Patch is ready to review.

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY '<_query_id>' \{ASYNC}_*
> _ASYNC_ is optional parameter which return control immediately without 
> waiting real cancellation will be done.
> By default, without ASYNC parameter, the request is blocking untill 
> cancellation is not done.
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-02-05 Thread Yury Gerzhedovich (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16760708#comment-16760708
 ] 

Yury Gerzhedovich commented on IGNITE-10161:


[~vozerov], Thanks for the idea. Now we use synchronous call and there is 
additional parameter ASYNC for KILL QUERY COMMAND, to do a killing without 
blocking.

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY '<_query_id>'_*
> Query should be canceled  together with its parts on all nodes. 



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


[jira] [Commented] (IGNITE-10161) Be able to cancel any query by query id

2019-02-04 Thread Vladimir Ozerov (JIRA)


[ 
https://issues.apache.org/jira/browse/IGNITE-10161?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16759719#comment-16759719
 ] 

Vladimir Ozerov commented on IGNITE-10161:
--

[~jooger], the main problem with current implementation is that client do not 
wait for real query cancel. This is not convenient for users. I think command 
should be blocked and notified once cancel is completed. How other vendors do 
this?

> Be able to cancel any query by query id
> ---
>
> Key: IGNITE-10161
> URL: https://issues.apache.org/jira/browse/IGNITE-10161
> Project: Ignite
>  Issue Type: Task
>  Components: sql
>Reporter: Yury Gerzhedovich
>Assignee: Yury Gerzhedovich
>Priority: Major
>  Labels: iep-29
> Fix For: 2.8
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> User should be able to cancel any query by query id through SQL command.
> SQL syntax: *KILL QUERY '<_query_id>'_*
> Query should be canceled  together with its parts on all nodes. 



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