Class Spool

  • All Implemented Interfaces:
    java.lang.Cloneable, RelOptNode, RelNode
    Direct Known Subclasses:
    TableSpool

    public abstract class Spool
    extends SingleRel
    Relational expression that iterates over its input and, in addition to returning its results, will forward them into other consumers.

    NOTE: The current API is experimental and subject to change without notice.

    • Field Detail

      • readType

        public final Spool.Type readType
        How the spool consumes elements from its input.
        • EAGER: the spool consumes the elements from its input at once at the initial request;
        • LAZY: the spool consumes the elements from its input one by one by request.
      • writeType

        public final Spool.Type writeType
        How the spool forwards elements to consumers.
        • EAGER: the spool forwards each element as soon as it returns it;
        • LAZY: the spool forwards all elements at once when it is done returning all of them.
    • Method Detail

      • copy

        public final RelNode copy​(RelTraitSet traitSet,
                                  java.util.List<RelNode> inputs)
        Description copied from interface: RelNode
        Creates a copy of this relational expression, perhaps changing traits and inputs.

        Sub-classes with other important attributes are encouraged to create variants of this method with more parameters.

        Specified by:
        copy in interface RelNode
        Overrides:
        copy in class AbstractRelNode
        Parameters:
        traitSet - Trait set
        inputs - Inputs
        Returns:
        Copy of this relational expression, substituting traits and inputs