Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for transactions spanning multiple actions #7

Open
aschrijver opened this issue Oct 26, 2013 · 2 comments
Open

Add support for transactions spanning multiple actions #7

aschrijver opened this issue Oct 26, 2013 · 2 comments

Comments

@aschrijver
Copy link
Collaborator

Provide a mechanism for transaction boundaries to span multiple actions.

See this post on the Vert.x google group: https://groups.google.com/d/msg/vertx/eIjzdQI23ss/hjYUtJcxVKcJ

@aschrijver
Copy link
Collaborator Author

Could use a similar mechanism as implemented by Tim Yates in the mod-jdbc-persistor:
https://github.com/timyates/mod-jdbc-persistor/blob/master/src/main/java/com/bloidonia/vertx/mods/JdbcProcessor.java#L385

@aschrijver
Copy link
Collaborator Author

Both OrientDB and Neo4J start implicit transactions when you create a Graph through GraphFactory (i.e. TransactionalGraph), but these are bound to a single transaction.

I tried the mechanism implemented in mod-jdbc-persistor but found that it doesn't work. In OrientDB nothing is persisted when a different thread performed the commit, and in Neo4J an exception is thrown.
Changing the verticle settings in mod.json to single-thread, non-worker solves the issue on OrientDB. However the persistor must be a multithreaded, worker verticle

Tinkerpop has a ThreadedTransactionalGraph for multi-threaded access to the graph, but there are no implementations for OrientDB and Neo4J.
See: https://github.com/tinkerpop/blueprints/wiki/Graph-Transactions#threadedtransactionalgraph-and-multi-threads-for-one-transaction

Also in Tinkerpop3 there will be significant changes to the way that transactions are handled. See: https://groups.google.com/forum/#!topic/gremlin-users/7ydt3Vkzsrs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant