- All Implemented Interfaces:
public class RewriteIdentityJoins
- extends Object
- implements OptimizerRule
optimizer rule that rewrites JOIN nodes that have
equi-join criteria where
the columns involved in the equi-join are all identity columns (that is, they form a
the table). This rewrite only happens when the left and right children of the JOIN node are both SOURCE nodes.
The basic idea is that in these identity equi-join cases, the following structure:
is transformed into a simple SOURCE node:
Note that this rewriting removes a selector, and thus the nodes above the JOIN node that made use of the removed selector are
also modified to reference the remaining selector.
public static final RewriteIdentityJoins INSTANCE
public PlanNode execute(QueryContext context,
- Optimize the supplied plan using the supplied context, hints, and yet-to-be-run rules.
- Specified by:
execute in interface
context - the context in which the query is being optimized; never null
plan - the plan to be optimized; never null
ruleStack - the stack of rules that will be run after this rule; never null
- the optimized plan; never null
- See Also:
protected void rewriteJoinNode(QueryContext context,
public String toString()
toString in class
- See Also:
Copyright © 2008-2010 JBoss, a division of Red Hat. All Rights Reserved.