@Value.Immutable(singleton=false)
public static interface SqlToRelConverter.Config
SqlToRelConverter.CONFIG
Modifier and Type | Method and Description |
---|---|
default SqlToRelConverter.Config |
addRelBuilderConfigTransform(java.util.function.UnaryOperator<RelBuilder.Config> transform)
Adds a transform to
getRelBuilderConfigTransform() . |
org.apache.calcite.rel.hint.HintStrategyTable |
getHintStrategyTable()
Returns the hint strategies used to decide how the hints are propagated to the relational
expressions.
|
default int |
getInSubQueryThreshold()
Returns the
inSubQueryThreshold option, default SqlToRelConverter.DEFAULT_IN_SUB_QUERY_THRESHOLD . |
java.util.function.UnaryOperator<RelBuilder.Config> |
getRelBuilderConfigTransform()
Returns a function that takes a
RelBuilder.Config and returns another. |
org.apache.calcite.tools.RelBuilderFactory |
getRelBuilderFactory()
Returns the factory to create
RelBuilder , never null. |
default boolean |
isCreateValuesRel()
Returns the
createValuesRel option. |
default boolean |
isDecorrelationEnabled()
Returns the
decorrelationEnabled option. |
default boolean |
isExpand()
Returns the
expand option. |
default boolean |
isExplain()
Returns the
explain option. |
default boolean |
isRemoveSortInSubQuery()
Returns whether to remove Sort operator for a sub-query if the Sort has no offset and
fetch limit attributes.
|
default boolean |
isTrimUnusedFields()
Returns the
trimUnusedFields option. |
SqlToRelConverter.Config |
withCreateValuesRel(boolean createValuesRel)
Sets
isCreateValuesRel() . |
SqlToRelConverter.Config |
withDecorrelationEnabled(boolean decorrelationEnabled)
Sets
isDecorrelationEnabled() . |
SqlToRelConverter.Config |
withExpand(boolean expand)
Sets
isExpand() . |
SqlToRelConverter.Config |
withExplain(boolean explain)
Sets
isExplain() . |
SqlToRelConverter.Config |
withHintStrategyTable(org.apache.calcite.rel.hint.HintStrategyTable hintStrategyTable)
Sets
getHintStrategyTable() . |
SqlToRelConverter.Config |
withInSubQueryThreshold(int threshold)
Sets
getInSubQueryThreshold() . |
SqlToRelConverter.Config |
withRelBuilderConfigTransform(java.util.function.UnaryOperator<RelBuilder.Config> transform)
|
SqlToRelConverter.Config |
withRelBuilderFactory(org.apache.calcite.tools.RelBuilderFactory factory)
Sets
getRelBuilderFactory() . |
SqlToRelConverter.Config |
withRemoveSortInSubQuery(boolean removeSortInSubQuery)
Sets
isRemoveSortInSubQuery() . |
SqlToRelConverter.Config |
withTrimUnusedFields(boolean trimUnusedFields)
Sets
isTrimUnusedFields() . |
@Value.Default default boolean isDecorrelationEnabled()
decorrelationEnabled
option. Controls whether to disable sub-query
decorrelation when needed. e.g. if outer joins are not supported.SqlToRelConverter.Config withDecorrelationEnabled(boolean decorrelationEnabled)
isDecorrelationEnabled()
.@Value.Default default boolean isTrimUnusedFields()
trimUnusedFields
option. Controls whether to trim unused fields as
part of the conversion process.SqlToRelConverter.Config withTrimUnusedFields(boolean trimUnusedFields)
isTrimUnusedFields()
.@Value.Default default boolean isCreateValuesRel()
createValuesRel
option. Controls whether instances of LogicalValues
are generated. These may not be supported
by all physical implementations.SqlToRelConverter.Config withCreateValuesRel(boolean createValuesRel)
isCreateValuesRel()
.@Value.Default default boolean isExplain()
explain
option. Describes whether the current statement is part of an
EXPLAIN PLAN statement.SqlToRelConverter.Config withExplain(boolean explain)
isExplain()
.@Value.Default default boolean isExpand()
expand
option. Controls whether to expand sub-queries. If false, each
sub-query becomes a RexSubQuery
.SqlToRelConverter.Config withExpand(boolean expand)
isExpand()
.@Value.Default default int getInSubQueryThreshold()
inSubQueryThreshold
option, default SqlToRelConverter.DEFAULT_IN_SUB_QUERY_THRESHOLD
. Controls the list size threshold under which SqlToRelConverter.convertInToOr(org.apache.calcite.sql2rel.SqlToRelConverter.Blackboard, java.util.List<org.apache.calcite.rex.RexNode>, org.apache.calcite.sql.SqlNodeList, org.apache.calcite.sql.fun.SqlInOperator)
is used. Lists of this size or greater will instead be converted to use a
join against an inline table (LogicalValues
)
rather than a predicate. A threshold of 0 forces usage of an inline table in all cases; a
threshold of Integer.MAX_VALUE
forces usage of OR in all cases.SqlToRelConverter.Config withInSubQueryThreshold(int threshold)
getInSubQueryThreshold()
.@Value.Default default boolean isRemoveSortInSubQuery()
SqlToRelConverter.Config withRemoveSortInSubQuery(boolean removeSortInSubQuery)
isRemoveSortInSubQuery()
.org.apache.calcite.tools.RelBuilderFactory getRelBuilderFactory()
RelBuilder
, never null. Default is RelFactories.LOGICAL_BUILDER
.SqlToRelConverter.Config withRelBuilderFactory(org.apache.calcite.tools.RelBuilderFactory factory)
getRelBuilderFactory()
.java.util.function.UnaryOperator<RelBuilder.Config> getRelBuilderConfigTransform()
RelBuilder.Config
and returns another. Default is
the identity function.SqlToRelConverter.Config withRelBuilderConfigTransform(java.util.function.UnaryOperator<RelBuilder.Config> transform)
default SqlToRelConverter.Config addRelBuilderConfigTransform(java.util.function.UnaryOperator<RelBuilder.Config> transform)
getRelBuilderConfigTransform()
.org.apache.calcite.rel.hint.HintStrategyTable getHintStrategyTable()
HintStrategyTable.EMPTY
.SqlToRelConverter.Config withHintStrategyTable(org.apache.calcite.rel.hint.HintStrategyTable hintStrategyTable)
getHintStrategyTable()
.Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.