Package com.apple.foundationdb.record.query.plan.plans

Classes implementing executable query plan elements.

The result of planning a query is a RecordQueryPlan, which supports an execute method against an FDBRecordStore with an EvaluationContext holding dynamic parameter values.

The most basic plan elements read from the database. For example,

In most cases, a plan is actually a tree of RecordQueryPlan elements, which is executed by asynchronously streaming the results of child plan elements into the parent processor.

For example,

  • A RecordQueryFilterPlan evaluates a boolean predicate expression against upstream records, only letting through those that satisfy it.
  • A RecordQueryUnionPlan merges two or more compatibly-ordered streams of records into one, eliminating duplicates.
  • A RecordQueryIntersectionPlan merges two or more compatibly-ordered streams of records into one, keeping only those that appear in all streams.