Class RuleDecomposeJoin
- java.lang.Object
-
- org.teiid.query.optimizer.relational.rules.RuleDecomposeJoin
-
- All Implemented Interfaces:
OptimizerRule
public class RuleDecomposeJoin extends Object implements OptimizerRule
Perform the optimization:source inner join union all source inner join union all => source a a b source source c union all inner join c source d b source d
-
-
Field Summary
Fields Modifier and Type Field Description static String
IMPLICIT_PARTITION_COLUMN_NAME
-
Constructor Summary
Constructors Constructor Description RuleDecomposeJoin()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PlanNode
decomposeJoin(PlanNode joinNode, PlanNode root, QueryMetadataInterface metadata, CommandContext context)
PlanNode
execute(PlanNode plan, QueryMetadataInterface metadata, CapabilitiesFinder capabilitiesFinder, RuleStack rules, AnalysisRecord analysisRecord, CommandContext context)
String
toString()
-
-
-
Field Detail
-
IMPLICIT_PARTITION_COLUMN_NAME
public static final String IMPLICIT_PARTITION_COLUMN_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
execute
public PlanNode execute(PlanNode plan, QueryMetadataInterface metadata, CapabilitiesFinder capabilitiesFinder, RuleStack rules, AnalysisRecord analysisRecord, CommandContext context) throws QueryPlannerException, QueryMetadataException, TeiidComponentException
- Specified by:
execute
in interfaceOptimizerRule
- Throws:
QueryPlannerException
QueryMetadataException
TeiidComponentException
-
decomposeJoin
public PlanNode decomposeJoin(PlanNode joinNode, PlanNode root, QueryMetadataInterface metadata, CommandContext context) throws TeiidComponentException, QueryPlannerException
-
-