Gremlin控制台addV似乎不添加顶点

时间:2018-10-28 20:08:53

标签: gremlin

在Gremlin Console中,为了添加顶点,我执行以下操作:

// One time initialization
graph = TinkerGraph.open()
g = graph.traversal()

// Add the vertex
g.addV('somelabel')

在控制台中,我得到:

==>v[0]

但是,如果我尝试遍历顶点:

g.V(0)

我在控制台中什么也没得到,好像索引是错误的。

(我一无所获)这一事实的证明是

g.V(0).count()
==>0

如果相反,我自己定义ID:

g.addV('somelabel').property(id, 1)

一切正常:

g.V(1)
==>v[1]

但是我不想自己定义id ...

我在哪里做错(或思考)?

软件版本为JanusGraph 0.2.2,Apache TinkerPop 3.2.9

1 个答案:

答案 0 :(得分:2)

您不是在这里使用JanusGraph,而是使用TinkerGraph(内存中的图形存储),通常用于测试或简单示例。 TinkerGraph默认使用长ID,这意味着当您使用int ID时,它找不到您的顶点。当您使用类型为long的参数时,它应该可以工作:

gremlin> g.addV('somelabel')
==>v[0]
gremlin> g.V(0)
gremlin> g.V(0L)
==>v[0]

configuration section for TinkerGraph说明了如何更改此配置以对其整数使用不同的类型。