使用以下设置在我的本地计算机上运行Gremlin Server:
gremlin.graph=org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerGraph
gremlin.tinkergraph.vertexIdManager=ANY
gremlin.tinkergraph.vertexPropertyIdManager=UUID
gremlin.tinkergraph.defaultVertexPropertyCardinality=list
当我运行查询时:
g.addV('Root')
.property(id,'15c9a352-2261-4ba1-8f54-96d6ac0c1a47')
.property('linkId','15c9a352-2261-4ba1-8f54-96d6ac0c1a47')
.property('name','Root')
我收到以下答复:
{"id":"15c9a352-2261-4ba1-8f54-96d6ac0c1a47","label":"Root","type":"vertex","properties":{}}
没有添加属性,当我获取存储的顶点时,它也不包含属性。
当我运行以下查询时:
graph.addVertex(
id, 'b83c53d4-6bfb-4b8c-a4f2-02a8c0f4a867',
label, 'Root',
'linkId', 'b83c53d4-6bfb-4b8c-a4f2-02a8c0f4a867',
'name', 'root')
我收到以下答复:
{
"id":"b83c53d4-6bfb-4b8c-a4f2-02a8c0f4a867",
"label":"Root",
"type":"vertex",
"properties":{
"linkId":[
{
"id":"ad8c4ace-7752-40f5-a531-4e03e2083a06",
"value":"b83c53d4-6bfb-4b8c-a4f2-02a8c0f4a867"
}
],
"name":[
{
"id":"b16492c1-7a43-421d-aa8c-d8f51b2a358e",
"value":"root"
}
]
}
}
我知道第一个查询使用g = graph.traversal(),第二个查询使用graph对象。
为什么添加顶点的属性结果会有所不同?
我的gremlin服务器上可能缺少我的设置吗?查询是否有问题?
答案 0 :(得分:0)
解决方案是将属性gremlin.tinkergraph.defaultVertexPropertyCardinality
更改为set
现在使用我的gremlin服务器设置如下:
gremlin.graph=org.apache.tinkerpop.gremlin.tinkergraph.structure.TinkerGraph
gremlin.tinkergraph.vertexIdManager=UUID
gremlin.tinkergraph.vertexPropertyIdManager=UUID
gremlin.tinkergraph.defaultVertexPropertyCardinality=set