[
https://issues.apache.org/jira/browse/TINKERPOP3-885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14965073#comment-14965073
]
ASF GitHub Bot commented on TINKERPOP3-885:
-------------------------------------------
GitHub user PommeVerte opened a pull request:
https://github.com/apache/incubator-tinkerpop/pull/113
TINKERPOP3-885 Made Transaction.onReadWrite() a ThreadLocal setting
JIRA issue : https://issues.apache.org/jira/browse/TINKERPOP3-885
Both transaction consumers have been made `ThreadLocal` settings.
Since this is a breaking change I've made some additions to the upgrade
document. It's worth noting that I didn't put anything in there for graph
providers as I wasn't sure what to put. Feel free to change/remove/add to this.
(or tell me and I'll be more than happy to add to it myself)
I've also only added the initial failing test we had found. If you can
think of anymore let me know.
PS: I've tried testing the full suit but for some reason my computer isn't
cooperating and it's just taking too much time (and ressources) so I had to
stop it. If any of you could give it a go I'd be grateful. Tests passed for
gremlin-server, gremlin-core, gremlin-groovy(-test), tinkergraph-gremlin from
what I've seen. Not sure about the others.
I'll try and get some stable testing plateform up sometime soon.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/PommeVerte/incubator-tinkerpop TINKERPOP-885
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-tinkerpop/pull/113.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 #113
----
commit 8ea6aa25e8fb88f64c8b43572eb4e518233db4b1
Author: Dylan Millikin <[email protected]>
Date: 2015-10-20T12:29:44Z
Made Transaction.onReadWrite() a ThreadLocal setting
----
> Change Transaction.onReadWrite() to be a ThreadLocal setting
> ------------------------------------------------------------
>
> Key: TINKERPOP3-885
> URL: https://issues.apache.org/jira/browse/TINKERPOP3-885
> Project: TinkerPop 3
> Issue Type: Improvement
> Components: server, structure
> Affects Versions: 3.0.1-incubating
> Reporter: Dylan Millikin
> Assignee: Dylan Millikin
> Labels: breaking
> Fix For: 3.1.0-incubating
>
>
> The issue is as follows:
> Because Transaction consumers are global for a graph. A
> {{SessionOpProcessor}} request will change the Transaction read write
> behavior to {{MANUAL}} across all concurrent/future requests.
> This will make other requests fail (ones expecting {{AUTO}}).
> This has been discussed here :
> http://mail-archives.apache.org/mod_mbox/incubator-tinkerpop-dev/201510.mbox/browser
> The solution would be to make Transaction consumers ThreadLocal to keep the
> state local to the requests.
> This is a breaking change.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)