TinkerGraph:为什么通过 GraphTraversalSource 不改变 persist/store 而使用 Graph 可以?
TinkerGraph: why mutating through GraphTraversalSource doesn't persist/store while using Graph does?
您好,我正在尝试使用 TinkerGraph
进行一些小的演示,但似乎无法持续使用 GraphTraversalSource
。这是我目前拥有的代码:
GraphTraversalSource g = TinkerGraph.open().traversal();
System.out.println(g.V().addV("testlabel").iterate());
System.out.println(g.V().count().next().intValue()); //returns 0
try {g.close(); }
catch(Exception e){
e.printStackTrace();
}
System.out.println(g.V().count().next().intValue()); //returns 0
这是输出:
[TinkerGraphStep(vertex,[]), AddVertexStep({label=[testlabel]})]
0
0
我知道这行得通:
Graph graph = TinkerGraph.open();
Vertex gremlin = graph.addVertex("testlabel");
System.out.println(IteratorUtils.count(graph.vertices()) == 1);
谢谢:)
看起来您需要直接从 GraphTraversalSource 对象而不是 V() 使用 addV(至少对于第一个对象)。以下代码将顶点保留在 gremlin 控制台中
gremlin> g = TinkerGraph.open().traversal();
==>graphtraversalsource[tinkergraph[vertices:0 edges:0], standard]
gremlin> g.V().addV("testing")
gremlin> g.V().count()
==>0
gremlin> g.V().addV("testing")
gremlin> g.V().count()
==>0
gremlin> g.addV("test");
==>v[0]
gremlin> g.V().count()
==>1
gremlin> g.addV("test2");
==>v[1]
gremlin> g.V().count()
==>2
gremlin> g.V().addV("testing3")
==>v[2]
==>v[3]
gremlin> g.V().count()
==>4
您好,我正在尝试使用 TinkerGraph
进行一些小的演示,但似乎无法持续使用 GraphTraversalSource
。这是我目前拥有的代码:
GraphTraversalSource g = TinkerGraph.open().traversal();
System.out.println(g.V().addV("testlabel").iterate());
System.out.println(g.V().count().next().intValue()); //returns 0
try {g.close(); }
catch(Exception e){
e.printStackTrace();
}
System.out.println(g.V().count().next().intValue()); //returns 0
这是输出:
[TinkerGraphStep(vertex,[]), AddVertexStep({label=[testlabel]})]
0
0
我知道这行得通:
Graph graph = TinkerGraph.open();
Vertex gremlin = graph.addVertex("testlabel");
System.out.println(IteratorUtils.count(graph.vertices()) == 1);
谢谢:)
看起来您需要直接从 GraphTraversalSource 对象而不是 V() 使用 addV(至少对于第一个对象)。以下代码将顶点保留在 gremlin 控制台中
gremlin> g = TinkerGraph.open().traversal();
==>graphtraversalsource[tinkergraph[vertices:0 edges:0], standard]
gremlin> g.V().addV("testing")
gremlin> g.V().count()
==>0
gremlin> g.V().addV("testing")
gremlin> g.V().count()
==>0
gremlin> g.addV("test");
==>v[0]
gremlin> g.V().count()
==>1
gremlin> g.addV("test2");
==>v[1]
gremlin> g.V().count()
==>2
gremlin> g.V().addV("testing3")
==>v[2]
==>v[3]
gremlin> g.V().count()
==>4