Package org.apache.calcite.plan
Interface RelOptNode
- All Known Subinterfaces:
ArrowRel
,BindableRel
,CassandraRel
,Converter
,ElasticsearchRel
,EnumerableRel
,GeodeRel
,InnodbRel
,InterpretableRel
,JdbcRel
,MongoRel
,PhysicalNode
,PigRel
,RelNode
,RelStructuredTypeFlattener.SelfFlatteningRel
,SparkRel
- All Known Implementing Classes:
AbstractConverter
,AbstractRelNode
,Aggregate
,AsofJoin
,Bindables.BindableAggregate
,Bindables.BindableFilter
,Bindables.BindableIntersect
,Bindables.BindableJoin
,Bindables.BindableMatch
,Bindables.BindableMinus
,Bindables.BindableProject
,Bindables.BindableSort
,Bindables.BindableTableScan
,Bindables.BindableUnion
,Bindables.BindableValues
,Bindables.BindableWindow
,BiRel
,Calc
,CassandraFilter
,CassandraLimit
,CassandraProject
,CassandraSort
,CassandraTableScan
,CassandraToEnumerableConverter
,Chi
,Collect
,ConverterImpl
,Correlate
,CsvTableScan
,CsvTableScan
,Delta
,DruidQuery
,ElasticsearchAggregate
,ElasticsearchFilter
,ElasticsearchProject
,ElasticsearchSort
,ElasticsearchTableScan
,ElasticsearchToEnumerableConverter
,EnumerableAggregate
,EnumerableAggregateBase
,EnumerableAsofJoin
,EnumerableBatchNestedLoopJoin
,EnumerableBindable
,EnumerableCalc
,EnumerableCollect
,EnumerableCorrelate
,EnumerableFilter
,EnumerableHashJoin
,EnumerableInterpretable
,EnumerableInterpreter
,EnumerableIntersect
,EnumerableLimit
,EnumerableLimitSort
,EnumerableMatch
,EnumerableMergeJoin
,EnumerableMergeUnion
,EnumerableMinus
,EnumerableNestedLoopJoin
,EnumerableProject
,EnumerableRepeatUnion
,EnumerableSort
,EnumerableSortedAggregate
,EnumerableTableFunctionScan
,EnumerableTableModify
,EnumerableTableScan
,EnumerableTableSpool
,EnumerableToSparkConverter
,EnumerableUncollect
,EnumerableUnion
,EnumerableValues
,EnumerableWindow
,EquiJoin
,EquiJoin
,Exchange
,Filter
,GeodeAggregate
,GeodeFilter
,GeodeProject
,GeodeSort
,GeodeTableScan
,GeodeToEnumerableConverter
,HepRelVertex
,InnodbFilter
,InnodbProject
,InnodbSort
,InnodbTableScan
,InnodbToEnumerableConverter
,InterpretableConverter
,Intersect
,JdbcRules.JdbcAggregate
,JdbcRules.JdbcCalc
,JdbcRules.JdbcFilter
,JdbcRules.JdbcIntersect
,JdbcRules.JdbcJoin
,JdbcRules.JdbcMinus
,JdbcRules.JdbcProject
,JdbcRules.JdbcSort
,JdbcRules.JdbcTableModify
,JdbcRules.JdbcUnion
,JdbcRules.JdbcValues
,JdbcTableScan
,JdbcToEnumerableConverter
,JdbcToSparkConverter
,Join
,LogicalAggregate
,LogicalAsofJoin
,LogicalCalc
,LogicalChi
,LogicalCorrelate
,LogicalDelta
,LogicalExchange
,LogicalFilter
,LogicalIntersect
,LogicalJoin
,LogicalMatch
,LogicalMinus
,LogicalProject
,LogicalRepeatUnion
,LogicalSnapshot
,LogicalSort
,LogicalSortExchange
,LogicalTableFunctionScan
,LogicalTableModify
,LogicalTableScan
,LogicalTableSpool
,LogicalUnion
,LogicalValues
,LogicalWindow
,Match
,Minus
,MongoAggregate
,MongoFilter
,MongoProject
,MongoSort
,MongoTableScan
,MongoToEnumerableConverter
,MultiJoin
,NoneConverter
,PigAggregate
,PigFilter
,PigJoin
,PigProject
,PigTableScan
,PigToEnumerableConverter
,Project
,RelSubset
,RepeatUnion
,Sample
,SetOp
,SingleRel
,Snapshot
,Sort
,SortExchange
,SparkRules.SparkCalc
,SparkRules.SparkValues
,SparkToEnumerableConverter
,SplunkTableScan
,Spool
,SqlToRelTestBase.CustomCorrelate
,StarTable.StarTableScan
,TableFunctionScan
,TableModify
,TableScan
,TableSpool
,Uncollect
,Union
,Values
,Window
public interface RelOptNode
Node in a planner.
-
Method Summary
Modifier and TypeMethodDescriptionReturns the cluster this relational expression belongs to.Deprecated.Returns a string which concisely describes the definition of this relational expression.int
getId()
Returns the ID of this relational expression, unique among all relational expressions created since the server was started.List<? extends RelOptNode>
Returns an array of this relational expression's inputs.Retrieves this RelNode's traits.
-
Method Details
-
getId
int getId()Returns the ID of this relational expression, unique among all relational expressions created since the server was started.- Returns:
- Unique ID
-
getDigest
String getDigest()Returns a string which concisely describes the definition of this relational expression. Two relational expressions are equivalent if their digests andgetRowType()
(except the field names) are the same.The digest does not contain the relational expression's identity -- that would prevent similar relational expressions from ever comparing equal -- but does include the identity of children (on the assumption that children have already been normalized).
If you want a descriptive string which contains the identity, call
Object.toString()
, which always returns "rel#{id}:{digest}".- Returns:
- Digest string of this
RelNode
-
getTraitSet
RelTraitSet getTraitSet()Retrieves this RelNode's traits. Note that although the RelTraitSet returned is modifiable, it must not be modified during optimization. It is legal to modify the traits of a RelNode before or after optimization, although doing so could render a tree of RelNodes unimplementable. If a RelNode's traits need to be modified during optimization, clone the RelNode and change the clone's traits.- Returns:
- this RelNode's trait set
-
getRowType
RelDataType getRowType() -
getDescription
Deprecated.Returns a string which describes the relational expression and, unlikegetDigest()
, also includes the identity. Typically returns "rel#{id}:{digest}".- Returns:
- String which describes the relational expression and, unlike
getDigest()
, also includes the identity
-
getInputs
List<? extends RelOptNode> getInputs()Returns an array of this relational expression's inputs. If there are no inputs, returns an empty list, notnull
.- Returns:
- Array of this relational expression's inputs
-
getCluster
RelOptCluster getCluster()Returns the cluster this relational expression belongs to.- Returns:
- cluster
-