Package com.twilio.kudu.sql.rel
Class KuduFilterRel
- java.lang.Object
-
- org.apache.calcite.rel.AbstractRelNode
-
- org.apache.calcite.rel.SingleRel
-
- org.apache.calcite.rel.core.Filter
-
- com.twilio.kudu.sql.rel.KuduFilterRel
-
- All Implemented Interfaces:
KuduRelNode
,Cloneable
,org.apache.calcite.plan.RelOptNode
,org.apache.calcite.rel.hint.Hintable
,org.apache.calcite.rel.RelNode
public class KuduFilterRel extends org.apache.calcite.rel.core.Filter implements KuduRelNode
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.twilio.kudu.sql.KuduRelNode
KuduRelNode.Implementor
-
-
Field Summary
Fields Modifier and Type Field Description org.apache.kudu.Schema
kuduSchema
List<List<CalciteKuduPredicate>>
scanPredicates
boolean
useInMemoryFiltering
-
Fields inherited from interface com.twilio.kudu.sql.KuduRelNode
CONVENTION
-
-
Constructor Summary
Constructors Constructor Description KuduFilterRel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode child, org.apache.calcite.rex.RexNode condition, List<List<CalciteKuduPredicate>> predicates, org.apache.kudu.Schema kuduSchema, boolean useInMemoryFiltering)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.calcite.plan.RelOptCost
computeSelfCost(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq)
KuduFilterRel
copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode input, org.apache.calcite.rex.RexNode condition)
org.apache.calcite.rel.RelWriter
explainTerms(org.apache.calcite.rel.RelWriter pw)
void
implement(KuduRelNode.Implementor implementor)
EachKuduRelNode
implementation will accept theKuduRelNode.Implementor
and manipulate it.-
Methods inherited from class org.apache.calcite.rel.core.Filter
accept, containsOver, copy, deepEquals0, deepHashCode0, estimateFilteredRows, estimateFilteredRows, estimateRowCount, getCondition, getHints, isValid
-
Methods inherited from class org.apache.calcite.rel.SingleRel
childrenAccept, deriveRowType, getInput, getInputs, replaceInput
-
Methods inherited from class org.apache.calcite.rel.AbstractRelNode
accept, collectVariablesSet, collectVariablesUsed, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getRelDigest, getRelTypeName, getRowType, getTable, getTraitSet, getVariablesSet, hashCode, isEnforcer, metadata, onRegister, recomputeDigest, register, 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.RelNode
accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, copy, deepEquals, deepHashCode, estimateRowCount, explain, explain, fieldIsNullable, getConvention, getCorrelVariable, getDigest, getExpectedInputRowType, getInput, getInputs, getRelDigest, getRelTypeName, getRowType, getTable, getVariablesSet, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, replaceInput
-
-
-
-
Field Detail
-
scanPredicates
public final List<List<CalciteKuduPredicate>> scanPredicates
-
kuduSchema
public final org.apache.kudu.Schema kuduSchema
-
useInMemoryFiltering
public final boolean useInMemoryFiltering
-
-
Constructor Detail
-
KuduFilterRel
public KuduFilterRel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode child, org.apache.calcite.rex.RexNode condition, List<List<CalciteKuduPredicate>> predicates, org.apache.kudu.Schema kuduSchema, boolean useInMemoryFiltering)
-
-
Method Detail
-
computeSelfCost
public org.apache.calcite.plan.RelOptCost computeSelfCost(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq)
- Specified by:
computeSelfCost
in interfaceorg.apache.calcite.rel.RelNode
- Overrides:
computeSelfCost
in classorg.apache.calcite.rel.core.Filter
-
copy
public KuduFilterRel copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode input, org.apache.calcite.rex.RexNode condition)
- Specified by:
copy
in classorg.apache.calcite.rel.core.Filter
-
implement
public void implement(KuduRelNode.Implementor implementor)
Description copied from interface:KuduRelNode
EachKuduRelNode
implementation will accept theKuduRelNode.Implementor
and manipulate it. TheImplementor
will then be used by theKuduToEnumerableConverter
to create aBlocks
that will be used to generate Byte code for the actual query.- Specified by:
implement
in interfaceKuduRelNode
- Parameters:
implementor
- mutable implementator to store information on for the Kudu RPCs
-
explainTerms
public org.apache.calcite.rel.RelWriter explainTerms(org.apache.calcite.rel.RelWriter pw)
- Overrides:
explainTerms
in classorg.apache.calcite.rel.core.Filter
-
-