Sunday, November 5, 2017

Neo4j: Which internal module responsible for verifying WHERE conditions from cypher?

Leave a Comment

My goal is to add to neo4j engine additional filtering, which will verify every node and relationship for property. This will give ability to break graph to subsets and perform random queries in different "layers" on demand.

According to this answer:

Cypher is build on the Traversal API

Though I tried to set breakpoints in PathExpanders.scala and StandardExpander.scala and it seems they aren't triggered while executing cypher MATCH query. Also modifying PathEvaluator in Evaluators.java didn't affected results for cypher queries.

I also inspected ast.rewriters which are triggered during cypher parsing, though it seems that I need to embed global filtering on later steps - when engine selects data from store.

In which place verification of node/relationship properties happens for cypher queries?

0 Answers

If You Enjoyed This, Take 5 Seconds To Share It

0 comments:

Post a Comment