Class RelTraitPropagationVisitor


@Deprecated public class RelTraitPropagationVisitor extends RelVisitor
As of 1.19, if you need to perform certain assertions regarding a RelNode tree and the contained traits you are encouraged to implement your own RelVisitor or RelShuttle directly. The reasons for deprecating this class are the following:
  • The contract (Javadoc and naming) and the behavior of the class are inconsistent.
  • The class is no longer used by any other components of the framework.
  • The class was used only for debugging purposes.
RelTraitPropagationVisitor traverses a RelNode and its unregistered children, making sure that each has a full complement of traits. When a RelNode is found to be missing one or more traits, they are copied from a RelTraitSet given during construction.
  • Constructor Details

    • RelTraitPropagationVisitor

      public RelTraitPropagationVisitor(RelOptPlanner planner, RelTraitSet baseTraits)
  • Method Details

    • visit

      public void visit(RelNode rel, int ordinal, @Nullable RelNode parent)
      Description copied from class: RelVisitor
      Visits a node during a traversal.
      visit in class RelVisitor
      rel - Node to visit
      ordinal - Ordinal of node within its parent
      parent - Parent of the node, or null if it is the root of the traversal