Class InnodbTableScan
java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.core.TableScan
org.apache.calcite.adapter.innodb.InnodbTableScan
- All Implemented Interfaces:
Cloneable
,InnodbRel
,RelOptNode
,Hintable
,RelNode
Relational expression representing a scan of an InnoDB data source.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.calcite.adapter.innodb.InnodbRel
InnodbRel.Implementor
Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode
RelNode.Context
-
Field Summary
Fields inherited from class org.apache.calcite.rel.AbstractRelNode
digest, id, rowType, traitSet
Fields inherited from interface org.apache.calcite.adapter.innodb.InnodbRel
CONVENTION
-
Constructor Summary
ModifierConstructorDescriptionprotected
InnodbTableScan
(RelOptCluster cluster, RelTraitSet traitSet, RelOptTable table, InnodbTable innodbTable, @Nullable RelDataType projectRowType, List<RelHint> hints) -
Method Summary
Modifier and TypeMethodDescriptioncopy
(RelTraitSet traitSet, List<RelNode> inputs) Creates a copy of this relational expression, perhaps changing traits and inputs.Describes the inputs and attributes of this relational expression.@Nullable String
Infer the implicit collation from index.void
implement
(InnodbRel.Implementor implementor) void
register
(RelOptPlanner planner) Registers any special rules specific to this kind of relational expression.Methods inherited from class org.apache.calcite.rel.core.TableScan
accept, computeSelfCost, estimateRowCount, getHints, getTable, identity, identity, project
Methods inherited from class org.apache.calcite.rel.AbstractRelNode
accept, childrenAccept, collectVariablesSet, collectVariablesUsed, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getInputs, getRelDigest, getRelTypeName, getRowType, getTraitSet, getVariablesSet, hashCode, isEnforcer, isValid, metadata, onRegister, recomputeDigest, replaceInput, sole, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.calcite.rel.hint.Hintable
attachHints, withHints
Methods inherited from interface org.apache.calcite.rel.RelNode
accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, computeSelfCost, deepEquals, deepHashCode, estimateRowCount, explain, explain, fieldIsNullable, getConvention, getCorrelVariable, getDigest, getExpectedInputRowType, getInput, getInputs, getRelDigest, getRelTypeName, getRowType, getTable, getVariablesSet, isEnforcer, isValid, metadata, onRegister, recomputeDigest, replaceInput, stripped
Methods inherited from interface org.apache.calcite.plan.RelOptNode
getCluster, getDescription, getId, getTraitSet
-
Constructor Details
-
InnodbTableScan
protected InnodbTableScan(RelOptCluster cluster, RelTraitSet traitSet, RelOptTable table, InnodbTable innodbTable, @Nullable RelDataType projectRowType, List<RelHint> hints)
-
-
Method Details
-
copy
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 interfaceRelNode
- Overrides:
copy
in classAbstractRelNode
- Parameters:
traitSet
- Trait setinputs
- Inputs- Returns:
- Copy of this relational expression, substituting traits and inputs
-
deriveRowType
- Overrides:
deriveRowType
in classTableScan
-
register
Description copied from interface:RelNode
Registers any special rules specific to this kind of relational expression.The planner calls this method this first time that it sees a relational expression of this class. The derived class should call
RelOptPlanner.addRule(org.apache.calcite.plan.RelOptRule)
for each rule, and then callsuper.register
.- Specified by:
register
in interfaceRelNode
- Overrides:
register
in classAbstractRelNode
- Parameters:
planner
- Planner to be used to register additional relational expressions
-
implement
-
explainTerms
Description copied from class:AbstractRelNode
Describes the inputs and attributes of this relational expression. Each node should callsuper.explainTerms
, then call theRelWriter.input(String, RelNode)
andRelWriter.item(String, Object)
methods for each input and attribute.- Overrides:
explainTerms
in classTableScan
- Parameters:
pw
- Plan writer- Returns:
- Plan writer for fluent-explain pattern
-
getImplicitCollation
Infer the implicit collation from index.- Returns:
- the implicit collation based on the natural ordering of an index
-
getForceIndexName
-