gpt4 book ai didi

java - Neo4J创建关系在远程挂起,但节点创建成功

转载 作者:太空宇宙 更新时间:2023-11-04 07:48:21 24 4
gpt4 key购买 nike

我的关系创建挂起,但下面的节点设法持久保存到我的远程客户端。

public class Baz 
{
private static enum CustomRelationships implements RelationshipType {
CATEGORY
}

public void foo()
{
RestGraphDatabse db = new RestGraphDatabase("http://remoteIp:7474/db/data",username,password);
Transaction tx = db.beginTx();
try{
Node a = db.createNode();
a.setProperty("foo", "foo"); // finishes
Node b = db.createNode();
b.setProperty("bar", "bar"); //finishes
a.createRelationshipTo(b, CustomRelationships .CATEGORY); // hangs
System.out.println("Finished relationship");
tx.success();
} finally {
tx.finish();
}
}
}

我不明白为什么。没有堆栈,连接也不会超时。

a.createRelationshipTo(b, DynamicRelationshipType.withName("CATEGORY"));

也挂起

此查询可以从管理 shell 正确执行:

start first=node(19), second=node(20) Create first-[r:RELTYPE { linkage : first.Baz + '<-->' + second.BazCat }]->second return r

但是当以这种方式运行时:

ExecutionResult result = engine.execute("start first=node("
+ entityNode.getId() + "), second=node("
+ categoryNode.getId() + ") "
+ " Create first-[r:RELTYPE { linkage : first.Baz"
+ " + '<-->' + second.BazCat" + " }]->second return r");

也挂起。

最佳答案

  1. 休息期间没有实际交易。
  2. Java-Rest-Binding 中的一个错误是内部线程没有作为守护线程启动。它实际上并没有挂起,只是程序没有结束。您可以使用 System.exit(0) 来结束程序作为解决方法。

关于java - Neo4J创建关系在远程挂起,但节点创建成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14925511/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com