Java 因果聚类。即使在事务终止后,数据也不在图形中
我们使用Neo4j企业版进行因果聚类。有3个核心节点和3个副本节点 为了使数据在neo4j数据库中可见,是否需要显式关闭会话。我在每个会话中创建近20K个事务(每个事务创建一个节点),每个事务显式调用success() 我观察到,除非会话终止,否则数据在Neo4J图形(浏览器)中以及Neo4J shell中都不可见 我做错什么了吗?我希望由于每个事务后面都显式地跟随success()方法,所以在事务返回success()后,我应该能够立即看到数据 Neo4J(螺栓驱动程序)是否在提交图形中的所有事务数据之前等待会话完成?所有这些交易都是独立交易,与之前或即将发生的交易无关Java 因果聚类。即使在事务终止后,数据也不在图形中,java,session,neo4j,transactions,neo4j-bolt,Java,Session,Neo4j,Transactions,Neo4j Bolt,我们使用Neo4j企业版进行因果聚类。有3个核心节点和3个副本节点 为了使数据在neo4j数据库中可见,是否需要显式关闭会话。我在每个会话中创建近20K个事务(每个事务创建一个节点),每个事务显式调用success() 我观察到,除非会话终止,否则数据在Neo4J图形(浏览器)中以及Neo4J shell中都不可见 我做错什么了吗?我希望由于每个事务后面都显式地跟随success()方法,所以在事务返回success()后,我应该能够立即看到数据 Neo4J(螺栓驱动程序)是否在提交图形中的所有
敬请告知。交易似乎没有在区块中自动关闭
try catch
您可以在不关闭会话的情况下手动关闭事务:[]:
看起来事务不会在块中自动关闭
try catch
您可以在不关闭会话的情况下手动关闭事务:[]:
Transaction.close()
执行实际的提交或回滚操作,具体取决于在同一事务中先前是否调用了success()
或failure()
(如果两者都未调用,则默认为失败)
如果在调用Session.close()
时某个事务仍处于活动状态,它将为您关闭该事务(每个会话一次最多只能有一个活动事务)。但是您不必关闭会话来执行实际的提交或回滚——您可以自己直接关闭当前事务。之后,如果需要,可以使用相同的会话创建新事务。(此外,您可以同时拥有多个会话。)事务。close()
执行实际的提交或回滚操作,具体取决于在同一事务上是否已提前调用了success()
或failure()
(如果两个都未调用,则默认为失败)
如果在调用Session.close()
时某个事务仍处于活动状态,它将为您关闭该事务(每个会话一次最多只能有一个活动事务)。但是您不必关闭会话来执行实际的提交或回滚——您可以自己直接关闭当前事务。之后,如果需要,可以使用相同的会话创建新事务。(此外,您可以同时拥有多个会话。)
Transaction tx = graphDb.beginTx();
try
{
// operations on the graph
// ...
tx.success();
}
finally
{
tx.close();
}