Class DruidRelFieldTrimmer
java.lang.Object
org.apache.calcite.sql2rel.RelFieldTrimmer
org.apache.druid.sql.calcite.planner.DruidRelFieldTrimmer
- All Implemented Interfaces:
org.apache.calcite.util.ReflectiveVisitor
public class DruidRelFieldTrimmer
extends org.apache.calcite.sql2rel.RelFieldTrimmer
DruidRelFieldTrimmer is a subclass of
RelFieldTrimmer that provides additional support for Druid specific RelNodes.
It is used to trim fields from Druid specific RelNodes like LogicalUnnest.-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.calcite.sql2rel.RelFieldTrimmer
org.apache.calcite.sql2rel.RelFieldTrimmer.TrimResult -
Constructor Summary
ConstructorsConstructorDescriptionDruidRelFieldTrimmer(@Nullable org.apache.calcite.sql.validate.SqlValidator validator, org.apache.calcite.tools.RelBuilder relBuilder) -
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.calcite.sql2rel.RelFieldTrimmer.TrimResultdummyProject(int fieldCount, org.apache.calcite.rel.RelNode input) protected org.apache.calcite.sql2rel.RelFieldTrimmer.TrimResultdummyProject(int fieldCount, org.apache.calcite.rel.RelNode input, @Nullable org.apache.calcite.rel.RelNode originalRelNode) org.apache.calcite.sql2rel.RelFieldTrimmer.TrimResulttrimFields(org.apache.calcite.rel.logical.LogicalCorrelate correlate, org.apache.calcite.util.ImmutableBitSet fieldsUsed, Set<org.apache.calcite.rel.type.RelDataTypeField> extraFields) Should be unnecesarry in versions having CALCITE-6715org.apache.calcite.sql2rel.RelFieldTrimmer.TrimResulttrimFields(LogicalUnnest correlate, org.apache.calcite.util.ImmutableBitSet fieldsUsed, Set<org.apache.calcite.rel.type.RelDataTypeField> extraFields) Methods inherited from class org.apache.calcite.sql2rel.RelFieldTrimmer
createMapping, dispatchTrimFields, result, result, trim, trimChild, trimChildRestore, trimFields, trimFields, trimFields, trimFields, trimFields, trimFields, trimFields, trimFields, trimFields, trimFields, trimFields, trimFields, trimFields, trimFields, trimFields, trimFields
-
Constructor Details
-
DruidRelFieldTrimmer
public DruidRelFieldTrimmer(@Nullable org.apache.calcite.sql.validate.SqlValidator validator, org.apache.calcite.tools.RelBuilder relBuilder)
-
-
Method Details
-
dummyProject
protected org.apache.calcite.sql2rel.RelFieldTrimmer.TrimResult dummyProject(int fieldCount, org.apache.calcite.rel.RelNode input) - Overrides:
dummyProjectin classorg.apache.calcite.sql2rel.RelFieldTrimmer
-
dummyProject
protected org.apache.calcite.sql2rel.RelFieldTrimmer.TrimResult dummyProject(int fieldCount, org.apache.calcite.rel.RelNode input, @Nullable org.apache.calcite.rel.RelNode originalRelNode) - Overrides:
dummyProjectin classorg.apache.calcite.sql2rel.RelFieldTrimmer
-
trimFields
public org.apache.calcite.sql2rel.RelFieldTrimmer.TrimResult trimFields(org.apache.calcite.rel.logical.LogicalCorrelate correlate, org.apache.calcite.util.ImmutableBitSet fieldsUsed, Set<org.apache.calcite.rel.type.RelDataTypeField> extraFields) Should be unnecesarry in versions having CALCITE-6715 -
trimFields
public org.apache.calcite.sql2rel.RelFieldTrimmer.TrimResult trimFields(LogicalUnnest correlate, org.apache.calcite.util.ImmutableBitSet fieldsUsed, Set<org.apache.calcite.rel.type.RelDataTypeField> extraFields)
-