-
Notifications
You must be signed in to change notification settings - Fork 580
Open
Labels
Description
Bug Type (问题类型)
gremlin (结果不合预期)
Before submit
- 我已经确认现有的 Issues 与 FAQ 中没有相同 / 重复问题 (I have confirmed and searched that there are no similar problems in the historical issue and documents)
Environment (环境信息)
- Server Version: 1.7.0
- Backend: RocksDB x nodes
- OS: 192 CPUs, 256 G RAM, Ubuntu 22.04
- Data Size: 50 vertices, 100 edges
Expected & Actual behavior (期望与实际表现)
Expected behavior
For the two query below, the same result should be returned:
g.V().has('vp4', lt('')).repeat(__.out('el2')).emit().times(1).count()
g.V().match(__.as('start').has('vp4', lt('')).union(__.out('el2')).as('m')).select('m').count()
Actual behavior
- The first query thrown a exception:
java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0 - The second query returned the results normally.
Additional Context
- We moved the
has(...)step andrepeat()step in first query into thematch()step and replace therepeat()withunion()step, which should not affect the result. - When I executed these two queries on Janusgraph and Tinkerpop, they both returned the same results and were consistent with the results of the second query.
- I have implemented a fuzzing tool and am using it to test HugeGraph. To reduce the burden on developers, I have simplified the test cases as much as possible and isolated irrelevant information.
Vertex/Edge example (问题点 / 边数据举例)
noneSchema [VertexLabel, EdgeLabel, IndexLabel] (元数据结构)
noneReactions are currently unavailable