I have a graph that has been populated by my application with a variety of vertices and edges which seems fine. But when I do some queries for edges between the vertices, I'm getting inconsistent responses that are confusing if not alarming.
I have vertex (ID 512) that should have edges to all my "person" vertices (IDs 2560768 and 5121024). If I use Rexster to retrieve the edges from either person vertex, I see the edge between it and 512.
{
Create_Time: 1424846541274,
_id: "1iw1s-e8-1st1-1ivwg",
_type: "edge",
_outV: 512,
_inV: 2560768,
_label: "Capture"
}
{
Create_Time: 1424905386647,
_id: "4kmtc-e8-1st1-31reo",
_type: "edge",
_outV: 512,
_inV: 5121024,
_label: "Capture"
}
{
Create_Time: 1424846541274,
_id: "1iw1s-e8-1st1-1ivwg",
_type: "edge",
_outV: 512,
_inV: 2560768,
_label: "Capture"
}
The edge between 512 and 5121024 is missing! Further, if I just do a query on all the edges with
http://localhost:8182/graphs/graph/edges I see the edge with ID 1iw1s-e8-1st1-1ivwg but edge ID 4kmtc-e8-1st1-31reo is not in the list.
I am issuing all of the queries through the same browser and Rexster so I would not think there is any transaction or locking issue.
How can this be? Is there an explanation for this type of inconsistency? If I can't ask two vertices about their edges and get a consistent answer, something seems seriously wrong.
Should I try using a different API (I've done Gremlin through Rexster and seen the same results already)? Is there anything that can be interrogated at a lower level to see what is going on?
I am using Titan 0.5.3 with a single Cassandra node, so if there is anything config related that I need to look at let me know.
Thanks,
Kevin