org.eigenbase.relopt.volcano
Class VolcanoPlannerTest.TestLeafRel
java.lang.Object
org.eigenbase.rel.AbstractRelNode
org.eigenbase.relopt.volcano.VolcanoPlannerTest.TestLeafRel
- All Implemented Interfaces:
- Cloneable, RelNode
- Direct Known Subclasses:
- VolcanoPlannerTest.NoneLeafRel, VolcanoPlannerTest.PhysLeafRel
- Enclosing class:
- VolcanoPlannerTest
private abstract static class VolcanoPlannerTest.TestLeafRel
- extends AbstractRelNode
Methods inherited from class org.eigenbase.rel.AbstractRelNode |
childrenAccept, cloneTraits, collectVariablesSet, collectVariablesUsed, computeDigest, getChildExps, getCluster, getCollationList, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getInputs, getOrCreateCorrelVariable, getQuery, getRelTypeName, getRows, getRowType, getTable, getTraits, getVariablesStopped, inheritTraitsFrom, isAccessTo, isDistinct, isValid, onRegister, recomputeDigest, register, registerCorrelVariable, replaceInput, setCorrelVariable, toString |
label
private String label
VolcanoPlannerTest.TestLeafRel
protected VolcanoPlannerTest.TestLeafRel(RelOptCluster cluster,
RelTraitSet traits,
String label)
getLabel
public String getLabel()
clone
public VolcanoPlannerTest.TestLeafRel clone()
- Description copied from interface:
RelNode
- Clones this RelNode.
Traits of the RelNode must be explicitly cloned, using AbstractRelNode.inheritTraitsFrom(AbstractRelNode)
, as the RelNode may
have traits of which it has no knowledge. Example implementation:
public MyRelNode clone()
{
MyRelNode clone = new MyRelNode(...);
clone.inheritTraitsFrom(this);
return clone;
}
N.B.: This method must be overridden whenever an existing,
concrete RelNode is extended. Otherwise, calling clone() will produce a
differently typed RelNode, resulting in invalid or incorrect query plans.
- Specified by:
clone
in interface RelNode
- Specified by:
clone
in class AbstractRelNode
- Returns:
- a clone of this RelNode
computeSelfCost
public RelOptCost computeSelfCost(RelOptPlanner planner)
- Description copied from interface:
RelNode
- Returns the cost of this plan (not including children). The base
implementation throws an error; derived classes should override.
NOTE jvs 29-Mar-2006: Don't call this method directly. Instead, use
RelMetadataQuery.getNonCumulativeCost(org.eigenbase.rel.RelNode)
, which gives plugins a
chance to override the rel's default ideas about cost.
- Specified by:
computeSelfCost
in interface RelNode
- Overrides:
computeSelfCost
in class AbstractRelNode
deriveRowType
protected RelDataType deriveRowType()
- Overrides:
deriveRowType
in class AbstractRelNode
explain
public void explain(RelOptPlanWriter pw)
- Specified by:
explain
in interface RelNode
- Overrides:
explain
in class AbstractRelNode