Class CalciteRulesManager
java.lang.Object
org.apache.druid.sql.calcite.planner.CalciteRulesManager
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final Stringstatic final intstatic final intstatic final int -
Constructor Summary
ConstructorsConstructorDescriptionCalciteRulesManager(Set<ExtensionCalciteRuleProvider> extensionCalciteRuleProviderSet) Manages the rules for planning of SQL queries via Calcite. -
Method Summary
Modifier and TypeMethodDescriptionList<org.apache.calcite.plan.RelOptRule>baseRuleSet(PlannerContext plannerContext, boolean withJoinRules) List<org.apache.calcite.plan.RelOptRule>bindableConventionRuleSet(PlannerContext plannerContext) List<org.apache.calcite.plan.RelOptRule>configurableRuleSet(PlannerContext plannerContext) List<org.apache.calcite.plan.RelOptRule>druidConventionRuleSet(PlannerContext plannerContext) List<org.apache.calcite.plan.RelOptRule>logicalConventionRuleSet(PlannerContext plannerContext) List<org.apache.calcite.tools.Program>programs(PlannerContext plannerContext)
-
Field Details
-
DRUID_CONVENTION_RULES
public static final int DRUID_CONVENTION_RULES- See Also:
-
BINDABLE_CONVENTION_RULES
public static final int BINDABLE_CONVENTION_RULES- See Also:
-
DRUID_DAG_CONVENTION_RULES
public static final int DRUID_DAG_CONVENTION_RULES- See Also:
-
BLOAT_PROPERTY
- See Also:
-
DEFAULT_BLOAT
public static final int DEFAULT_BLOAT- See Also:
-
-
Constructor Details
-
CalciteRulesManager
@Inject public CalciteRulesManager(Set<ExtensionCalciteRuleProvider> extensionCalciteRuleProviderSet) Manages the rules for planning of SQL queries via Calcite. Also provides methods for extensions to provide custom rules for planning.- Parameters:
extensionCalciteRuleProviderSet- the set of custom rules coming from extensions
-
-
Method Details
-
programs
-
druidConventionRuleSet
public List<org.apache.calcite.plan.RelOptRule> druidConventionRuleSet(PlannerContext plannerContext) -
logicalConventionRuleSet
public List<org.apache.calcite.plan.RelOptRule> logicalConventionRuleSet(PlannerContext plannerContext) -
bindableConventionRuleSet
public List<org.apache.calcite.plan.RelOptRule> bindableConventionRuleSet(PlannerContext plannerContext) -
configurableRuleSet
-
baseRuleSet
public List<org.apache.calcite.plan.RelOptRule> baseRuleSet(PlannerContext plannerContext, boolean withJoinRules)
-