Skip to content


Query is a Statement.

Creating Instance

Query takes the following to be created:

  • NodeLocation
  • Select
  • Relation
  • WindowExpression
  • Expression
  • GroupBy
  • PartitionBy
  • Expression
  • RefinementInfo
  • pullQuery
  • Limit

Query is created when:

  • EngineExecutor is requested to sourceTablePlan
  • StatementRewriter.Rewriter is requested to visitQuery
  • AstBuilder.Visitor is requested to visitQuery

pullQuery Flag

Query is given a pullQuery flag when created (which is most importantly when AstBuilder.Visitor is requested to visitQuery).

AstBuilder.Visitor turns the pullQuery flag on (true) when the Query has no EMIT clause (and the buildingPersistentQuery internal flag is off).


boolean isPullQuery()

isPullQuery is used when:


R accept(
  AstVisitor<R, C> visitor,
  C context)

accept requests the given AstVisitor to visit a Query.

accept is part of the AstNode abstraction.

Back to top