我正在运行下面的代码来判断是否发生回滚调用.但是,我得到了这个错误:
Could not rollback transaction org.neo4j.driver.exceptions.ClientException: Can't rollback, transaction has been rolled back
at org.neo4j.driver.internal.util.Futures.blockingGet(Futures.java:143)
at org.neo4j.driver.internal.InternalTransaction.rollback(InternalTransaction.java:46)
是否不能手动回滚事务?
Driver driver = GraphDatabase.driver(neo4jUrl, AuthTokens.basic(neo4jUsername,neo4jPassword));
Session session = driver.session();
Transaction tx = null;
try{
tx = session.beginTransaction();
String insertQuery = "CREATE(n:Person{id:8,name:'Person6',age:26}) ";
tx.run(insertQuery);
String delQuery = "MATCH(n:Person{id:3}) DELETE n";
// String delQuery = "MATCH(n:Person{id:2}) DELETE n";
tx.run(delQuery);
tx.commit();
System.out.println("Trnx committed");
}catch(Exception e){
tx.rollback();
System.out.println("Transaction rolled back.");
} finally {
if (session != null) session.close();
if (driver != null) driver.close();
}