Java JanusGraph:当以不同的方式执行查询时,为相同的说明符返回不同的输出

Java JanusGraph:当以不同的方式执行查询时,为相同的说明符返回不同的输出,java,graph-databases,gremlin,janusgraph,graphexp,Java,Graph Databases,Gremlin,Janusgraph,Graphexp,我正在使用GrapherXP来可视化图形。GrapherXP在内部使用gremlin查询来获取输出 这是GrapherXP正在执行的查询: nodes = g.V().limit(50).toList();edges = g.V(nodes).aggregate('node').outE().as('edge').inV().where(within('node')).select('edge').toList();[nodes,edges] 我已经在Janusraph上为CRUD操作创建了自

我正在使用GrapherXP来可视化图形。GrapherXP在内部使用gremlin查询来获取输出

这是GrapherXP正在执行的查询:

nodes = g.V().limit(50).toList();edges = g.V(nodes).aggregate('node').outE().as('edge').inV().where(within('node')).select('edge').toList();[nodes,edges]
我已经在Janusraph上为CRUD操作创建了自己的API。我在两个顶点之间插入一条边,边中有一些说明符(键、值对)

运行上述查询后,GrapherXP将返回:

id: {relationId: "551-6co-13it-m54"}
inV: 28696
inVLabel: "vertex"
label: "intend"
outV: 8232
outVLabel: "vertex"
properties:
owner_id: {key: "owner_id", value: "18699980"}
rel_id: {key: "rel_id", value: "intend"}
rel_name: {key: "rel_name", value: ""}
relation_specifier: {key: "relation_specifier", value: "[]"}
src_specifier: {key: "src_specifier", value: "-1466934972"}
tar_specifier: {key: "tar_specifier", value: "[]"}
__proto__: Object
type: "edge"
正如我们所看到的,这里几乎没有什么东西是空的。示例:rel_名称、tar_说明符等

现在我通过不同的查询得到一些其他结果:

我的查询(用Java编写):

使用我自己的API,我在上面的查询中发送源和目标

我的查询回应:

{
  "res": [
    {
      "tar_specifier": "[for month]",
      "src_specifier": "[]",
      "relation_specifier": "[]",
      "rel_name": "intend",
      "owner_id": "",
      "rel_id": "-1466934972",
      "doc_id": "18699980"
    }
  ]
}
我的预期输出是最后一个,它以我发送的确切方式显示数据。IDK为什么在UI中他们得到的响应完全是一团糟

示例:“rel_name”在最后一个输出中是“intential”(如预期),而在UI响应中它被分配给rel_id

我们都在使用不同的Gremlin查询,但数据仍然不应该被分配到其他地方或变为空

我调试了UI,得到了与上面提到的相同的查询和响应

我不熟悉Gremlin,但我了解不同的数据库,我相信数据组织并不依赖于查询

提前谢谢你

{
  "res": [
    {
      "tar_specifier": "[for month]",
      "src_specifier": "[]",
      "relation_specifier": "[]",
      "rel_name": "intend",
      "owner_id": "",
      "rel_id": "-1466934972",
      "doc_id": "18699980"
    }
  ]
}