Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incorrectly comparing a counted value with predicate outside() #3642

Open
zhengyingying opened this issue Mar 6, 2023 · 0 comments
Open

Comments

@zhengyingying
Copy link

Please include configurations and logs if available.

For confirmed bugs, please report:

  • Version: 0.6.3
  • Storage Backend: inmemory
  • Mixed Index Backend:
  • Link to discussed bug:
  • Expected Behavior: I expect all vertices can be returned.
  • Current Behavior: Only return one vertex.
  • Steps to Reproduce:

I count the number of incoming edges of each vertex and filter vertices with a predicate outside(-1, -2). If a value is less than the first provided number (i.e., -1) or greater than the second (i.e., -2), outside(-1, -2) can filter it. Therefore, we expect all vertices can be returned because the number of their incoming edges should be greater than -2. However, only one vertex is returned.

gremlin> :> g.V().where(__.inE().count().is(outside(-1, -2)))
==>v[4312]

Stack Trace (if you have one)

Vertex bob = g.addV("person").property("name", "Bob").next(); // v[4312]
Vertex alice = g.addV("person").property("name", "Alice").next(); // v[4216]
Vertex book = g.addV("book").property("name", "book1").next(); // v[8312]
Edge edge1 = g.addE("knows").from(bob).to(alice).next();
Edge edge2 = g.addE("write").from(alice).to(book).next();
g.E(edge2).property("duration", new Float(0.94461)).iterate();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant