vertex.getEdges() by edge label is inconsistent

34 views
Skip to first unread message

Shwetha G S

unread,
Aug 9, 2016, 7:20:38 AM8/9/16
to Aurelius
Hi,

On titan 0.5.4, in some concurrent calls scenario where edge is added, vertex.getEdges() by edge label doesn't return the edge. But, getEdges() without label returns the edge with the right label.

For example, in the following concurrent operations:
1. v1.addedge(v2, "l1"); graph.commit
2. v3.addedge(v4, "l2"); graph.commit
3. simple gremlin search; graph commit 

After these operations complete, v1.getEdges(OUT, "l1") doesn't return any edges. But v1.getEdges(OUT) returns the edge with label "l1". Is there any known issue around this?

Unfortunately, I can't reproduce this issue with a simple graph example. But it happens consistently in our application. Any pointers will be helpful

Thanks,
Shwetha

Jason Plurad

unread,
Aug 9, 2016, 10:43:03 AM8/9/16
to Aurelius
Hi Shwetha,

I'd suggest making sure to rollback the current graph transaction. Also you could try incorporating the vertex id into a single query in case you had stored a cached vertex as a local variable from a previous transaction.

graph.rollback();
graph
.getVertex(vertexId).getEdges(OUT, "to");

-- Jason
Reply all
Reply to author
Forward
0 new messages