Gremlin 查询无意中迭代了整个图
Gremlin query unintentionally iterates whole graph
我正在尝试在单个查询中插入两个顶点。我正在执行以下查询,但第二个顶点以某种方式迭代了整个图(请参阅从 executeprofile 中截取的图像)。
我哪里误会了?
g
.V('1')
.fold()
.coalesce(
unfold(),
addV('Company').property('id', '1').property('pk','1')
)
.aggregate('a')
.V('2')
.fold()
.coalesce(
unfold(),
addV('Person').property('id', '2').property('pk', '2')
)
.as('b')
最终,我设法找到了解决方案,尽管不是原因。
我(大致)转换为:
g
.V('1')
.fold()
.coalesce(
g.V('1'),
addV('Company').property('id', '1').property('pk','1')
)
.aggregate('a')
.coalesce(
g.V('2'),
addV('Person').property('id', '2').property('pk', '2')
)
.as('b')
所以基本上删除了第二个 .V('2') 并将其放入合并中。我想一定有什么方法可以删除第一个 V('1'),但我还没有完全弄明白。
我正在尝试在单个查询中插入两个顶点。我正在执行以下查询,但第二个顶点以某种方式迭代了整个图(请参阅从 executeprofile 中截取的图像)。
我哪里误会了?
g
.V('1')
.fold()
.coalesce(
unfold(),
addV('Company').property('id', '1').property('pk','1')
)
.aggregate('a')
.V('2')
.fold()
.coalesce(
unfold(),
addV('Person').property('id', '2').property('pk', '2')
)
.as('b')
最终,我设法找到了解决方案,尽管不是原因。
我(大致)转换为:
g
.V('1')
.fold()
.coalesce(
g.V('1'),
addV('Company').property('id', '1').property('pk','1')
)
.aggregate('a')
.coalesce(
g.V('2'),
addV('Person').property('id', '2').property('pk', '2')
)
.as('b')
所以基本上删除了第二个 .V('2') 并将其放入合并中。我想一定有什么方法可以删除第一个 V('1'),但我还没有完全弄明白。