Skip to content

[Bug] Wrong result for where(count().is(lt(0))) when counted traversal is empty #3084

Description

@choeoe

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
  • gremlin: 3.5.1
  • Docker Image: hugegraph/hugegraph:latest
  • Backend: default Docker standalone backend
  • Data Size: 1 vertex, 0 edges

Expected & Actual behavior (期望与实际表现)

HugeGraph keeps a traverser for a where() child traversal whose count() is 0 and whose predicate is lt(0).

Minimal graph:
(a:A {i: 1})

No R edges exist.

Bug-triggering query:
g.V('a').where(__.both('R').count().is(lt(0))).values('i')

Expected:
[]

Actual:
[1]

Since the counted traversal returns 0, the predicate lt(0) should be false.

Vertex/Edge example (问题点 / 边数据举例)

**Vertex/Edge example**



curl -fsS --compressed -X DELETE \
  "http://127.0.0.1:8080/graphs/hugegraph/clear?confirm_message=I'm%20sure%20to%20delete%20all%20data"

curl -fsS --compressed -H 'Content-Type: application/json' -X POST \
  -d '{"id":"a","label":"A","properties":{"i":1}}' \
  "http://127.0.0.1:8080/graphs/hugegraph/graph/vertices"

Schema [VertexLabel, EdgeLabel, IndexLabel] (元数据结构)

**Schema**



curl -fsS --compressed -H 'Content-Type: application/json' -X POST \
  -d '{"name":"i","data_type":"LONG","cardinality":"SINGLE"}' \
  "http://127.0.0.1:8080/graphs/hugegraph/schema/propertykeys"

curl -fsS --compressed -H 'Content-Type: application/json' -X POST \
  -d '{"name":"A","id_strategy":"CUSTOMIZE_STRING","properties":["i"],"nullable_keys":["i"],"enable_label_index":true}' \
  "http://127.0.0.1:8080/graphs/hugegraph/schema/vertexlabels"

curl -fsS --compressed -H 'Content-Type: application/json' -X POST \
  -d '{"name":"B","id_strategy":"CUSTOMIZE_STRING","properties":[],"nullable_keys":[],"enable_label_index":true}' \
  "http://127.0.0.1:8080/graphs/hugegraph/schema/vertexlabels"

curl -fsS --compressed -H 'Content-Type: application/json' -X POST \
  -d '{"name":"R","source_label":"B","target_label":"A","frequency":"SINGLE","properties":[],"nullable_keys":[],"enable_label_index":true}' \
  "http://127.0.0.1:8080/graphs/hugegraph/schema/edgelabels"

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggremlinTinkerPop gremlin

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions