Class HintStrategy.Builder

java.lang.Object
org.apache.calcite.rel.hint.HintStrategy.Builder
Enclosing class:
HintStrategy

public static class HintStrategy.Builder extends Object
Builder for HintStrategy.
  • Method Details

    • optionChecker

      public HintStrategy.Builder optionChecker(HintOptionChecker optionChecker)
      Registers a hint option checker to validate the hint options.
    • excludedRules

      public HintStrategy.Builder excludedRules(RelOptRule... rules)
      Registers an array of rules to exclude during the RelOptPlanner planning.

      The desired converter rules work together with the excluded rules. We have no validation here but they expect to have the same function(semantic equivalent).

      A rule fire cancels if:

      1. The registered excludedRules contains the rule
      2. And the desired converter rules conversion is not possible for the rule matched root node
      Parameters:
      rules - excluded rules
    • converterRules

      public HintStrategy.Builder converterRules(ConverterRule... rules)
      Registers an array of desired converter rules during the RelOptPlanner planning.

      The desired converter rules work together with the excluded rules. We have no validation here but they expect to have the same function(semantic equivalent).

      A rule fire cancels if:

      1. The registered excludedRules contains the rule
      2. And the desired converter rules conversion is not possible for the rule matched root node

      If no converter rules are specified, we assume the conversion is possible.

      Parameters:
      rules - desired converter rules
    • build

      public HintStrategy build()