Skip to content
This repository has been archived by the owner on Apr 4, 2021. It is now read-only.

Consider introducing unary GetVertices operator to allow predicate pushdown #381

Open
szarnyasg opened this issue Oct 7, 2018 · 0 comments

Comments

@szarnyasg
Copy link
Member

szarnyasg commented Oct 7, 2018

This issue is related to #380, but it goes beyond its scope.

Consider the query:

UNWIND [1, 2] AS tagId
MATCH (tag:Tag {tagId: tagId})
RETURN tag

This is currently compiled to a join with two legs:

  • Dual -> Unwind -> Join
  • GetVertices -> Selection -> Join

For correlated queries, it would make sense to use a 'unary GetVertices' operator, which can take the output of an Unwind operator.

For reference, Neo4j also uses a sort of lazy join operator, Apply, which is an efficient approach.

plan 12

cc @jmarton

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant