private static class RuleQueue.PhaseMatchList extends Object
rule-matches
for a particular
phase of the planner's execution.| Modifier and Type | Field and Description |
|---|---|
(package private) List<VolcanoRuleMatch> |
list
Current list of VolcanoRuleMatches for this phase.
|
(package private) com.google.common.collect.Multimap<RelSubset,VolcanoRuleMatch> |
matchMap
Multi-map of RelSubset to VolcanoRuleMatches.
|
(package private) Set<String> |
names
A set of rule-match names contained in
list. |
(package private) VolcanoPlannerPhase |
phase
The VolcanoPlannerPhase that this PhaseMatchList is used in.
|
| Constructor and Description |
|---|
PhaseMatchList(VolcanoPlannerPhase phase) |
final VolcanoPlannerPhase phase
final List<VolcanoRuleMatch> list
Use a hunkList because ArrayList does not implement
remove(0) efficiently.
final Set<String> names
list. Allows fast
detection of duplicate rule-matches.final com.google.common.collect.Multimap<RelSubset,VolcanoRuleMatch> matchMap
clear the rule-match's
cached importance when the importance of a related RelSubset is modified
(e.g., due to invocation of
RuleQueue.boostImportance(Collection, double)).PhaseMatchList(VolcanoPlannerPhase phase)
Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.