|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.eigenbase.rel.AbstractRelNode
org.eigenbase.rel.TableAccessRelBase
public abstract class TableAccessRelBase
TableAccessRelBase is an abstract base class for implementations
of TableAccessRel.
| Field Summary | |
|---|---|
protected RelOptConnection |
connection
The connection to the optimizing session. |
protected RelOptTable |
table
The table definition. |
| Fields inherited from class org.eigenbase.rel.AbstractRelNode |
|---|
digest, id, nextId, rowType, traits |
| Fields inherited from interface org.eigenbase.rel.RelNode |
|---|
emptyArray |
| Constructor Summary | |
|---|---|
protected |
TableAccessRelBase(RelOptCluster cluster,
RelTraitSet traits,
RelOptTable table,
RelOptConnection connection)
|
| Method Summary | |
|---|---|
TableAccessRelBase |
clone()
Clones this RelNode. |
RelOptCost |
computeSelfCost(RelOptPlanner planner)
Returns the cost of this plan (not including children). |
RelDataType |
deriveRowType()
|
void |
explain(RelOptPlanWriter pw)
|
List<RelCollation> |
getCollationList()
Returns a description of the physical ordering (or orderings) of this relational expression. |
RelOptConnection |
getConnection()
|
double |
getRows()
Returns an estimate of the number of rows this relational expression will return. |
RelOptTable |
getTable()
If this relational expression represents an access to a table, returns that table, otherwise returns null. |
| Methods inherited from class org.eigenbase.rel.AbstractRelNode |
|---|
childrenAccept, cloneTraits, collectVariablesSet, collectVariablesUsed, computeDigest, getChildExps, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getInputs, getOrCreateCorrelVariable, getQuery, getRelTypeName, getRowType, getTraits, getVariablesStopped, inheritTraitsFrom, isAccessTo, isDistinct, isValid, onRegister, recomputeDigest, register, registerCorrelVariable, replaceInput, setCorrelVariable, toString |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected RelOptConnection connection
protected RelOptTable table
| Constructor Detail |
|---|
protected TableAccessRelBase(RelOptCluster cluster,
RelTraitSet traits,
RelOptTable table,
RelOptConnection connection)
| Method Detail |
|---|
public RelOptConnection getConnection()
public double getRows()
RelNodeNOTE jvs 29-Mar-2006: Don't call this method directly. Instead, use
RelMetadataQuery.getRowCount(org.eigenbase.rel.RelNode), which gives plugins a chance to
override the rel's default ideas about row count.
getRows in interface RelNodegetRows in class AbstractRelNodepublic RelOptTable getTable()
RelNode
getTable in interface RelNodegetTable in class AbstractRelNodepublic List<RelCollation> getCollationList()
RelNode
getCollationList in interface RelNodegetCollationList in class AbstractRelNodepublic TableAccessRelBase clone()
RelNodeTraits 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.
clone in interface RelNodeclone in class AbstractRelNodepublic RelOptCost computeSelfCost(RelOptPlanner planner)
RelNodeNOTE 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.
computeSelfCost in interface RelNodecomputeSelfCost in class AbstractRelNodepublic RelDataType deriveRowType()
deriveRowType in class AbstractRelNodepublic void explain(RelOptPlanWriter pw)
explain in interface RelNodeexplain in class AbstractRelNode
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||