-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
Support transactions for Neo4j #18764
Comments
/cc @michael-simons |
Thanks, Adrian. After we spoke I had some thoughts. which is actually quite usable. Also having such a managed driver session, we could pass it on to Neo4j-OGM (not the Hibernate one), which is an officially supported Neo4j library. @sandronm would that be of value to your project too? |
This will be indeed a nice improvement for our project too, indeed! 👍
Le 16 juillet 2021 22:10:19 Michael Simons ***@***.***> a écrit :
…
Thanks, Adrian.
After we spoke I had some thoughts.
for reasons I had to look at Hibernate-OGM. Different topic though (there
are people using it and want to use a 4.x driver). While I evaluated the
work necessary here, I came across.
https://github.com/hibernate/hibernate-ogm/blob/main/neo4j/src/main/java/org/hibernate/ogm/datastore/neo4j/remote/bolt/transaction/impl/BoltNeo4jResourceLocalTransactionCoordinator.java
which is actually quite usable.
I don’t want and I can’t support another OGM but I can see supporting a
transaction coordinator similar to the one above. It needs to provide means
to get a managed driver session so to say from it and your use case would
work.Also having such a managed driver session, we could pass it on to
Neo4j-OGM (not the Hibernate one), which is an officially supported Neo4j
library. @sandronm would that be of value to your project too?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.
|
Hello! Do you think there will be someday a support for @transactional annotation @michael-simons ? But yes, for sure, it's just a "nice to have" in the end. |
Hey @sandronm I still have the branch in which I hook into Nayara JTA transaction and I played around with it after your comment to see if it still works with the new extension https://github.com/quarkiverse/quarkus-neo4j In theory it would, and it would also be easier to add it into the extension, but the commentns of my general understanding of the JTA mechanism in place makes me wonder if its a good idea. I would do it like yesterday if it was anything Spring TX Manager (that I know very well…) |
I hope somebody will be able to help you then ;-) |
Description
Currently the provided
neo4j-java-driver
does not participate in JTA transactions.It would be helpful if one could span transactions across business logic methods which itself could contain multiple calls to different Neo4j data access methods.
Ideally this feature should be available in a JTA standard compliant fashion.
So if in the following example the repository methods would be implemented by using Neo4j / OGM, the business logic contained in the service method should be executed completely transactional.
The implementation of such a Neo4j TX Manager and therefore transaction support for Neo4j would enable important capabilities when using Neo4j in Quarkus applications.
/cc @michael-simons
Implementation ideas
No response
The text was updated successfully, but these errors were encountered: