Gremlin drop() 无法通过 java api 工作
Gremlin drop() isn't working via java api
我正在使用由本地 dynamodb
实例(使用 3.0 tinkerpop
堆栈)支持的 titan db 1.0.0
。我花了比我愿意承认的更多的时间试图弄清楚为什么 drop() 不起作用。在我的用例中,我试图删除通过遍历找到的特定边缘,但即使 graph.traversal().V().drop()
也不起作用。我做了很多谷歌搜索,但可能没有使用正确的关键字。我终于想出了我将在回答中指定的问题。希望其他人觉得这很有用。
我终于想起在某个地方读过(不幸的是我现在找不到它来分享 link edit:参见 Stephen Mallete 提供的 link ),当处理 java-land 中的 gremlin 时,您需要明确地迭代遍历。
所以诀窍是 graph.traversal().V().drop().iterate()
。请注意,在使用 gremlin 控制台时不需要这样做(至少在 3.0 中是这样)。您可以只使用 graph.traversal().V().drop()
.
您可以尝试以下方法来清除图表:
TitanGraph titanGraph = TitanFactory.open(config);
TitanCleanup.clear(graph);
这实质上删除了 Cassandra 中的键空间并完全清除了图表,包括索引。
遍历后需要提交
示例:
graph.traversal().V().drop().iterate()
graph.tx().commit()
我正在使用由本地 dynamodb
实例(使用 3.0 tinkerpop
堆栈)支持的 titan db 1.0.0
。我花了比我愿意承认的更多的时间试图弄清楚为什么 drop() 不起作用。在我的用例中,我试图删除通过遍历找到的特定边缘,但即使 graph.traversal().V().drop()
也不起作用。我做了很多谷歌搜索,但可能没有使用正确的关键字。我终于想出了我将在回答中指定的问题。希望其他人觉得这很有用。
我终于想起在某个地方读过(不幸的是我现在找不到它来分享 link edit:参见 Stephen Mallete 提供的 link ),当处理 java-land 中的 gremlin 时,您需要明确地迭代遍历。
所以诀窍是 graph.traversal().V().drop().iterate()
。请注意,在使用 gremlin 控制台时不需要这样做(至少在 3.0 中是这样)。您可以只使用 graph.traversal().V().drop()
.
您可以尝试以下方法来清除图表:
TitanGraph titanGraph = TitanFactory.open(config);
TitanCleanup.clear(graph);
这实质上删除了 Cassandra 中的键空间并完全清除了图表,包括索引。
遍历后需要提交
示例:
graph.traversal().V().drop().iterate()
graph.tx().commit()