Neptune AWS Gremlin Next() 文档

问题描述 投票:0回答:1

这可能是一个基本问题,但我一生都无法在任何地方找到这方面的文档。我尝试过 https://tinkerpop.apache.org/docs/current/reference/#terminal-steps 但对于终端步骤,它似乎仅适用于 gremlin 控制台。

我在连接到 neptune 的 AWS lambda 上用 JavaScript 运行 gremlin。 next() 返回的内容是什么意思?

我称之为类似的东西

const addedItem = await g.addV('student').property('name', 'Jeffery').property('GPA', 4.0).next();
console.log('added: ' + mapToStr(addedItem));

这个输出

added: {"value":{"id":"24c52605-36ce-3194-72d6-46f5265ac59e","label":"student"},"done":false}

值是不言自明的(即使我想要返回完整的项目,我也必须添加 .valueMap()),“完成”是什么意思?这是否意味着海王星还没有添加节点?我注意到有时当我连续运行脚本时我会得到

Failed to complete Insert operation for a VertexProperty due to conflicting concurrent operations. Please retry. 0 transactions are currently rolling back.

amazon-web-services gremlin amazon-neptune
1个回答
0
投票

我相信被调用的

next()
是JavaScript方法,而不是Gremlin步骤(https://www.geeksforgeeks.org/javascript-generator-next-method/),其中
done
字段代表事实迭代器有可以返回的附加项。通常,当我使用 JavaScript 时,我使用
toList()
gremlin 步骤作为终端步骤,它将所有值作为列表返回,而不是像
next()
步骤那样作为迭代器。除非您返回许多值,否则您不会看到任何明显的性能差异

© www.soinside.com 2019 - 2024. All rights reserved.