public final class RuleMergeCriteria extends Object implements OptimizerRule
Modifier and Type | Class and Description |
---|---|
static class |
RuleMergeCriteria.PlannedResult |
static class |
RuleMergeCriteria.ReferenceReplacementVisitor
Used to replace correlated references
|
Constructor and Description |
---|
RuleMergeCriteria(IDGenerator idGenerator,
CapabilitiesFinder capFinder,
AnalysisRecord analysisRecord,
CommandContext context,
QueryMetadataInterface metadata) |
Modifier and Type | Method and Description |
---|---|
PlanNode |
execute(PlanNode plan,
QueryMetadataInterface metadata,
CapabilitiesFinder capFinder,
RuleStack rules,
AnalysisRecord analysisRecord,
CommandContext context) |
RuleMergeCriteria.PlannedResult |
findSubquery(Criteria crit,
boolean unnest) |
RuleMergeCriteria.PlannedResult |
findSubquery(Expression expr,
boolean unnest,
RuleMergeCriteria.PlannedResult result) |
static boolean |
isDistinct(Query query,
List<Expression> expressions,
QueryMetadataInterface metadata) |
boolean |
planQuery(Collection<GroupSymbol> leftGroups,
boolean requireDistinct,
RuleMergeCriteria.PlannedResult plannedResult) |
String |
toString() |
public RuleMergeCriteria(IDGenerator idGenerator, CapabilitiesFinder capFinder, AnalysisRecord analysisRecord, CommandContext context, QueryMetadataInterface metadata)
public PlanNode execute(PlanNode plan, QueryMetadataInterface metadata, CapabilitiesFinder capFinder, RuleStack rules, AnalysisRecord analysisRecord, CommandContext context) throws QueryPlannerException, TeiidComponentException
execute
in interface OptimizerRule
QueryPlannerException
TeiidComponentException
OptimizerRule#execute(PlanNode, QueryMetadataInterface, RuleStack)
public RuleMergeCriteria.PlannedResult findSubquery(Expression expr, boolean unnest, RuleMergeCriteria.PlannedResult result)
public RuleMergeCriteria.PlannedResult findSubquery(Criteria crit, boolean unnest) throws TeiidComponentException, QueryMetadataException
public boolean planQuery(Collection<GroupSymbol> leftGroups, boolean requireDistinct, RuleMergeCriteria.PlannedResult plannedResult) throws QueryMetadataException, TeiidComponentException
public static boolean isDistinct(Query query, List<Expression> expressions, QueryMetadataInterface metadata) throws QueryMetadataException, TeiidComponentException
Copyright © 2018 JBoss by Red Hat. All rights reserved.