Package com.apple.foundationdb.record.query.plan.synthetic
These planners and plans are used to generate synthetic records for the purpose of maintaining indexes of them. They run in response to changes that require such maintenance. For example, when a new index on a synthetic record type is defined, all its records need to be synthesized to populate the index. When an ordinary stored record that is part of a synthetic record type is modified, the associated records must be synthesized to update the index.
These classes are not used as part of ordinary query planning and execution. Rather, they use the ordinary query planner, building queries from the synthetic record meta-data and running those queries to produce streams of stored records that are combined into streams of synthetic records for indexing. Since the query planner does not support joins, the synthetic planners must build multiple query plans and nest them. It is expected that this will change substantially when the planner itself supports joins.
-
Interface Summary Interface Description SyntheticRecordFromStoredRecordPlan A plan for deriving synthetic records from a given record.SyntheticRecordPlan A plan for generating synthetic records without an explicit starting point. -
Class Summary Class Description SyntheticRecordPlanner A planner forSyntheticRecordPlan
andSyntheticRecordFromStoredRecordPlan
plans.