[jira] [Commented] (TINKERPOP-932) Add ability to cancel script execution associated with a Gremlin Server Session
[ https://issues.apache.org/jira/browse/TINKERPOP-932?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15629333#comment-15629333 ] ASF GitHub Bot commented on TINKERPOP-932: -- Github user asfgit closed the pull request at: https://github.com/apache/tinkerpop/pull/461 > Add ability to cancel script execution associated with a Gremlin Server > Session > > > Key: TINKERPOP-932 > URL: https://issues.apache.org/jira/browse/TINKERPOP-932 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.0.2-incubating >Reporter: Zachary Kurey >Assignee: stephen mallette > Fix For: 3.2.4 > > > Currently with a {{SessionedClient}} there is no way to cancel a long running > script and the client has to depend on Gremlin Server side configured > timeouts before they can execute another script associated with the same > session id. > There is a way we can forcefully close a session from the client side, or > just close the entire Gremlin client. But it would be useful for client side > applications to be able to cancel script execution, have its intermediate > effects rolled back, and be able to continue interacting with the session > without losing session variable state maintained on the Gremlin server side. > Unsure where this should live at an API level, since canceling by session id > isn't relevant for all {{Client}} implementations. If somehow when the > {{CompletableFuture}} returned by {{Client.submitAsync}} could do > this when the {{Future}} is canceled, that would be a nice way to bridge > implementations. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (TINKERPOP-932) Add ability to cancel script execution associated with a Gremlin Server Session
[ https://issues.apache.org/jira/browse/TINKERPOP-932?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15618325#comment-15618325 ] ASF GitHub Bot commented on TINKERPOP-932: -- Github user pluradj commented on the issue: https://github.com/apache/tinkerpop/pull/461 Tested with: `mvn clean install && mvn verify -pl gremlin-server -DskipIntegrationTests=false -DincludeNeo4j` Code review LGTM. VOTE: +1 > Add ability to cancel script execution associated with a Gremlin Server > Session > > > Key: TINKERPOP-932 > URL: https://issues.apache.org/jira/browse/TINKERPOP-932 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.0.2-incubating >Reporter: Zachary Kurey >Assignee: stephen mallette > Fix For: 3.2.4 > > > Currently with a {{SessionedClient}} there is no way to cancel a long running > script and the client has to depend on Gremlin Server side configured > timeouts before they can execute another script associated with the same > session id. > There is a way we can forcefully close a session from the client side, or > just close the entire Gremlin client. But it would be useful for client side > applications to be able to cancel script execution, have its intermediate > effects rolled back, and be able to continue interacting with the session > without losing session variable state maintained on the Gremlin server side. > Unsure where this should live at an API level, since canceling by session id > isn't relevant for all {{Client}} implementations. If somehow when the > {{CompletableFuture}} returned by {{Client.submitAsync}} could do > this when the {{Future}} is canceled, that would be a nice way to bridge > implementations. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (TINKERPOP-932) Add ability to cancel script execution associated with a Gremlin Server Session
[ https://issues.apache.org/jira/browse/TINKERPOP-932?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15603167#comment-15603167 ] ASF GitHub Bot commented on TINKERPOP-932: -- GitHub user spmallette opened a pull request: https://github.com/apache/tinkerpop/pull/461 TINKERPOP-932 Added "force" option on session close. https://issues.apache.org/jira/browse/TINKERPOP-932 Allows session close requests to interrupt a long run job at the cost of not closing transactions. Tested with: `mvn clean install && mvn verify -pl gremlin-server -DskipIntegrationTests=false -DincludeNeo4j` VOTE +1 You can merge this pull request into a Git repository by running: $ git pull https://github.com/apache/tinkerpop TINKERPOP-932 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tinkerpop/pull/461.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #461 > Add ability to cancel script execution associated with a Gremlin Server > Session > > > Key: TINKERPOP-932 > URL: https://issues.apache.org/jira/browse/TINKERPOP-932 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.0.2-incubating >Reporter: Zachary Kurey >Assignee: stephen mallette > Fix For: 3.2.4 > > > Currently with a {{SessionedClient}} there is no way to cancel a long running > script and the client has to depend on Gremlin Server side configured > timeouts before they can execute another script associated with the same > session id. > There is a way we can forcefully close a session from the client side, or > just close the entire Gremlin client. But it would be useful for client side > applications to be able to cancel script execution, have its intermediate > effects rolled back, and be able to continue interacting with the session > without losing session variable state maintained on the Gremlin server side. > Unsure where this should live at an API level, since canceling by session id > isn't relevant for all {{Client}} implementations. If somehow when the > {{CompletableFuture}} returned by {{Client.submitAsync}} could do > this when the {{Future}} is canceled, that would be a nice way to bridge > implementations. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (TINKERPOP-932) Add ability to cancel script execution associated with a Gremlin Server Session
[ https://issues.apache.org/jira/browse/TINKERPOP-932?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15497302#comment-15497302 ] stephen mallette commented on TINKERPOP-932: I sense that barring some obscene change to TinkerPop's transactional model, we won't get much closer to a solution for this than what was done on TINKERPOP-1442. The only additional change left that I think I could do is to implement a "force" option on a close request that would just interrupt the thread running the session and orphan the transactions leaving it up to the graph implementation to sort out what to do with them. In a sense, a "force" might be better than awaiting a timeout (e.g. you have a long/infinite timeout for an OLAP job). Of course, an "interrupt" is merely a suggestion to stop the thread in the session so, that might not even doing anything at the end of the day depending on the script. If there are no other ideas on this, I will try to implement a "force" option in the manner I just described. If for some reason that isn't possible then I will just close this barring no new ideas. > Add ability to cancel script execution associated with a Gremlin Server > Session > > > Key: TINKERPOP-932 > URL: https://issues.apache.org/jira/browse/TINKERPOP-932 > Project: TinkerPop > Issue Type: Improvement > Components: server >Affects Versions: 3.0.2-incubating >Reporter: Zachary Kurey >Assignee: stephen mallette > Fix For: 3.2.3 > > > Currently with a {{SessionedClient}} there is no way to cancel a long running > script and the client has to depend on Gremlin Server side configured > timeouts before they can execute another script associated with the same > session id. > There is a way we can forcefully close a session from the client side, or > just close the entire Gremlin client. But it would be useful for client side > applications to be able to cancel script execution, have its intermediate > effects rolled back, and be able to continue interacting with the session > without losing session variable state maintained on the Gremlin server side. > Unsure where this should live at an API level, since canceling by session id > isn't relevant for all {{Client}} implementations. If somehow when the > {{CompletableFuture}} returned by {{Client.submitAsync}} could do > this when the {{Future}} is canceled, that would be a nice way to bridge > implementations. -- This message was sent by Atlassian JIRA (v6.3.4#6332)