org.teiid.query.optimizer.relational.rules
Class RuleDecomposeJoin
java.lang.Object
org.teiid.query.optimizer.relational.rules.RuleDecomposeJoin
- All Implemented Interfaces:
- OptimizerRule
public class RuleDecomposeJoin
- extends java.lang.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
TODO: non-ansi joins
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
RuleDecomposeJoin
public RuleDecomposeJoin()
execute
public PlanNode execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capabilitiesFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context)
throws QueryPlannerException,
QueryMetadataException,
TeiidComponentException
- Specified by:
execute in interface OptimizerRule
- Throws:
QueryPlannerException
QueryMetadataException
TeiidComponentException
decomposeJoin
public PlanNode decomposeJoin(PlanNode joinNode,
PlanNode root,
QueryMetadataInterface metadata,
CommandContext context)
throws TeiidComponentException,
QueryPlannerException
- Throws:
TeiidComponentException
QueryPlannerException
toString
public java.lang.String toString()
- Overrides:
toString in class java.lang.Object
Copyright © 2011. All Rights Reserved.