Skip to content

feat: support explicit transactions in Java sdk - #899

Open
liulx20 wants to merge 10 commits into
mainfrom
feat/java-driver-explicit-transactions
Open

feat: support explicit transactions in Java sdk#899
liulx20 wants to merge 10 commits into
mainfrom
feat/java-driver-explicit-transactions

Conversation

@liulx20

@liulx20 liulx20 commented Aug 19, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • add an explicit Transaction API with run, commit, rollback, close, and transaction state handling
  • route transaction requests through REST endpoints with encoded transaction IDs and no automatic transport retries
  • prevent session-level queries while an explicit transaction is active
  • parse transaction IDs from begin-transaction responses
  • document explicit transaction usage and add unit/E2E coverage

API example

try (Session session = driver.session();
        Transaction transaction = session.beginTransaction()) {
    transaction.run("CREATE (:Person {id: 1, name: 'Alice'})").close();
    transaction.commit();
}

Testing

  • mvn -q test
  • 64 tests passed; 3 live-server E2E tests skipped when NEUG_JAVA_E2E_URI is not set

Dependency

The driver API and unit tests can be reviewed independently. End-to-end explicit transaction behavior requires the service endpoints introduced by #873.

@liulx20 liulx20 changed the title feat(java-driver): support explicit transactions feat: support explicit transactions Aug 19, 2026
@liulx20 liulx20 changed the title feat: support explicit transactions [Java Driver] Support explicit transactions Aug 19, 2026
@liulx20 liulx20 changed the title [Java Driver] Support explicit transactions feat: support explicit transactions in Java driver Aug 19, 2026
@liulx20 liulx20 changed the title feat: support explicit transactions in Java driver feat: support explicit transactions in Java sdk Aug 19, 2026
Comment thread tools/python_bind/tests/test_java_driver.py Fixed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants