Open Yicheng-Wang opened 3 years ago
get it, maybe could try to use g.V().has('length', not(between(423,-23))).dedup()
first?
and u can paste the return vertices
in Vertex/Edge example (问题点 / 边数据举例)
get it, maybe could try to use
g.V().has('length', not(between(423,-23))).dedup()
first?and u can paste the
return vertices
inVertex/Edge example (问题点 / 边数据举例)
Thanks for your response~
.dedup()
works, and I paste the return vertices
in Vertex/Edge example (问题点 / 边数据举例)
now.
Will this be solved in the future?
Yep, after our test-dev ensure & reproduce it, we'll marked it in dev schedule
And the issue with the bug
tag will not be closed until fixed
@Yicheng-Wang We can improve this case in the future, and welcome to contribute code: https://github.com/hugegraph/hugegraph/blob/master/CONTRIBUTING.md
Bug Type (问题类型)
gremlin (结果不合预期)
Before submit
Environment (环境信息)
Expected & Actual behavior (期望与实际表现)
Expected behavior
We executed the query “g.V().has('length', not(between(423,-23)))”, and expected to get the vertices whose property ‘length’ is less than the first provided number 423 or greater than the second -23.
Actual behavior
In theory, the vertex which is in this range could be returned, but there should be no duplicate vertices. However, we found some of the target vertices appears more than once in the results, which would not happen in other gremlin-based graph databases in the same cases. This bug also exists on not(between()) API.
Example to reproduce
Vertex/Edge example (问题点 / 边数据举例)
Take
"g.V().has('length', not(between(423,-23)))"
as an example, results returned by HugeGraph are as following:It does work if we add
"dedup()"
:However, we do not need
"dedup()"
to have nonredundant results in other gremlin-based graph databases, e.g., JanusGraph:Schema [VertexLabel, EdgeLabel, IndexLabel] (元数据结构)
No response