OmniSciDB  1dac507f6e
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl Class Reference
+ Inheritance diagram for org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl:
+ Collaboration diagram for org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl:

Classes

class  DefaultExpandPredicate
 

Public Member Functions

boolean isConvertTableAccess ()
 
boolean isDecorrelationEnabled ()
 
boolean isTrimUnusedFields ()
 
boolean isCreateValuesRel ()
 
boolean isExplain ()
 
boolean isExpand ()
 
BiPredicate< SqlNode, Join > getPushdownJoinCondition ()
 
int getInSubQueryThreshold ()
 
RelBuilderFactory getRelBuilderFactory ()
 
BiPredicate< SqlNode, SqlNode > getExpandPredicate ()
 

Private Member Functions

 ConfigImpl (boolean convertTableAccess, boolean decorrelationEnabled, boolean trimUnusedFields, boolean createValuesRel, boolean explain, boolean expand, BiPredicate< SqlNode, Join > pushdownJoinCondition, BiPredicate< SqlNode, SqlNode > expandPredicate, int inSubQueryThreshold, RelBuilderFactory relBuilderFactory)
 

Private Attributes

final boolean convertTableAccess
 
final boolean decorrelationEnabled
 
final boolean trimUnusedFields
 
final boolean createValuesRel
 
final boolean explain
 
final boolean expand
 
final BiPredicate< SqlNode,
SqlNode > 
expandPredicate
 
final int inSubQueryThreshold
 
final RelBuilderFactory relBuilderFactory
 
BiPredicate< SqlNode, Join > pushdownJoinCondition
 

Additional Inherited Members

- Public Attributes inherited from org.apache.calcite.sql2rel.SqlToRelConverter.Config
Config DEFAULT = configBuilder().build()
 

Detailed Description

Implementation of Config. Called by builder; all values are in private final fields.

Definition at line 5489 of file SqlToRelConverter.java.

Constructor & Destructor Documentation

org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.ConfigImpl ( boolean  convertTableAccess,
boolean  decorrelationEnabled,
boolean  trimUnusedFields,
boolean  createValuesRel,
boolean  explain,
boolean  expand,
BiPredicate< SqlNode, Join >  pushdownJoinCondition,
BiPredicate< SqlNode, SqlNode >  expandPredicate,
int  inSubQueryThreshold,
RelBuilderFactory  relBuilderFactory 
)
inlineprivate

Definition at line 5514 of file SqlToRelConverter.java.

5523  {
5524  this.convertTableAccess = convertTableAccess;
5525  this.decorrelationEnabled = decorrelationEnabled;
5526  this.trimUnusedFields = trimUnusedFields;
5527  this.createValuesRel = createValuesRel;
5528  this.explain = explain;
5529  this.expand = expand;
5530 
5531  if (null == expandPredicate) {
5532  expandPredicate = new DefaultExpandPredicate();
5533  }
5534  this.expandPredicate = expandPredicate;
5535  this.inSubQueryThreshold = inSubQueryThreshold;
5536  this.relBuilderFactory = relBuilderFactory;
5537 
5538  if (null != pushdownJoinCondition) {
5539  this.pushdownJoinCondition = pushdownJoinCondition;
5540  }
5541  }

Member Function Documentation

BiPredicate<SqlNode, SqlNode> org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.getExpandPredicate ( )
inline

predicate used to determine if a sql node should be expanded. (assuming expansion is supported for that node)

Per default returns the vaule of isExpand() on all nodes

Implements org.apache.calcite.sql2rel.SqlToRelConverter.Config.

Definition at line 5579 of file SqlToRelConverter.java.

5579  {
5580  return expandPredicate;
5581  }
int org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.getInSubQueryThreshold ( )
inline

Returns the

option, default DEFAULT_IN_SUB_QUERY_THRESHOLD. Controls the list size threshold under which convertInToOr is used. Lists of this size or greater will instead be converted to use a join against an inline table (org.apache.calcite.rel.logical.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.

Implements org.apache.calcite.sql2rel.SqlToRelConverter.Config.

Definition at line 5571 of file SqlToRelConverter.java.

BiPredicate<SqlNode, Join> org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.getPushdownJoinCondition ( )
inline

Returns if join conditions should be pushed down to the projections, if possible.

Implements org.apache.calcite.sql2rel.SqlToRelConverter.Config.

Definition at line 5567 of file SqlToRelConverter.java.

5567  {
5568  return pushdownJoinCondition;
5569  }
RelBuilderFactory org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.getRelBuilderFactory ( )
inline

Returns the factory to create RelBuilder, never null. Default is RelFactories#LOGICAL_BUILDER.

Implements org.apache.calcite.sql2rel.SqlToRelConverter.Config.

Definition at line 5575 of file SqlToRelConverter.java.

5575  {
5576  return relBuilderFactory;
5577  }
boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.isConvertTableAccess ( )
inline

Returns the

option. Controls whether table access references are converted to physical rels immediately. The optimizer doesn't like leaf rels to have Convention#NONE. However, if we are doing further conversion passes (e.g. RelStructuredTypeFlattener), then we may need to defer conversion.

Implements org.apache.calcite.sql2rel.SqlToRelConverter.Config.

Definition at line 5543 of file SqlToRelConverter.java.

5543  {
5544  return convertTableAccess;
5545  }
boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.isCreateValuesRel ( )
inline

Returns the

option. Controls whether instances of org.apache.calcite.rel.logical.LogicalValues are generated. These may not be supported by all physical implementations.

Implements org.apache.calcite.sql2rel.SqlToRelConverter.Config.

Definition at line 5555 of file SqlToRelConverter.java.

5555  {
5556  return createValuesRel;
5557  }
boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.isDecorrelationEnabled ( )
inline

Returns the

option. Controls whether to disable sub-query decorrelation when needed. e.g. if outer joins are not supported.

Implements org.apache.calcite.sql2rel.SqlToRelConverter.Config.

Definition at line 5547 of file SqlToRelConverter.java.

5547  {
5548  return decorrelationEnabled;
5549  }
boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.isExpand ( )
inline

Returns the

option. Controls whether to expand sub-queries. If false, each sub-query becomes a org.apache.calcite.rex.RexSubQuery.

Implements org.apache.calcite.sql2rel.SqlToRelConverter.Config.

Definition at line 5563 of file SqlToRelConverter.java.

5563  {
5564  return expand;
5565  }
boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.isExplain ( )
inline

Returns the

option. Describes whether the current statement is part of an EXPLAIN PLAN statement.

Implements org.apache.calcite.sql2rel.SqlToRelConverter.Config.

Definition at line 5559 of file SqlToRelConverter.java.

5559  {
5560  return explain;
5561  }
boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.isTrimUnusedFields ( )
inline

Returns the

option. Controls whether to trim unused fields as part of the conversion process.

Implements org.apache.calcite.sql2rel.SqlToRelConverter.Config.

Definition at line 5551 of file SqlToRelConverter.java.

5551  {
5552  return trimUnusedFields;
5553  }

Member Data Documentation

final boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.convertTableAccess
private

Definition at line 5490 of file SqlToRelConverter.java.

final boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.createValuesRel
private

Definition at line 5493 of file SqlToRelConverter.java.

final boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.decorrelationEnabled
private

Definition at line 5491 of file SqlToRelConverter.java.

final boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.expand
private

Definition at line 5495 of file SqlToRelConverter.java.

final BiPredicate<SqlNode, SqlNode> org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.expandPredicate
private

Definition at line 5496 of file SqlToRelConverter.java.

final boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.explain
private

Definition at line 5494 of file SqlToRelConverter.java.

final int org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.inSubQueryThreshold
private

Definition at line 5497 of file SqlToRelConverter.java.

BiPredicate<SqlNode, Join> org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.pushdownJoinCondition
private
Initial value:
=
new BiPredicate<SqlNode, Join>() {
public boolean test(SqlNode t, Join u) {
return true;
};
}

Definition at line 5507 of file SqlToRelConverter.java.

final RelBuilderFactory org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.relBuilderFactory
private

Definition at line 5498 of file SqlToRelConverter.java.

final boolean org.apache.calcite.sql2rel.SqlToRelConverter.ConfigImpl.trimUnusedFields
private

Definition at line 5492 of file SqlToRelConverter.java.


The documentation for this class was generated from the following file: