CapabilitiesUtil |
|
CriteriaCapabilityValidatorVisitor |
|
CriteriaCapabilityValidatorVisitor.ValidatorOptions |
|
FrameUtil |
|
JoinUtil |
Utility methods for query planning related to joins.
|
NewCalculateCostUtil |
|
NewCalculateCostUtil.DependentCostAnalysis |
|
RuleAccessPatternValidation |
Validates that the access pattern(s) of a source are satisfied.
|
RuleApplySecurity |
Applies row/column security to a non-update plan
Should be run after rule assign output elements
|
RuleAssignOutputElements |
This rule is responsible for assigning the output elements to every node in the
plan.
|
RuleCalculateCost |
|
RuleChooseDependent |
Finds nodes that can be turned into dependent joins
|
RuleChooseJoinStrategy |
Marks join as a candidate merge join if conditions are met
|
RuleCleanCriteria |
Removes phantom and TRUE or FALSE criteria
|
RuleCollapseSource |
|
RuleConstants |
|
RuleCopyCriteria |
For each join node this rule will find the set of criteria allowed to influence the join (the join criteria, and inner
side criteria on non full outer joins) and builds new criteria based upon the equality relationships found.
|
RuleDecomposeJoin |
Perform the optimization:
|
RuleImplementJoinStrategy |
Inserts sort nodes for specific join strategies.
|
RuleMergeCriteria |
|
RuleMergeVirtual |
|
RulePlaceAccess |
This rule finds all SOURCE nodes and associates ACCESS patterns, ACCESS nodes, and aliases.
|
RulePlanJoins |
Determines join orderings based upon dependency and cost information
The algorithm works as follows:
Stage 1.
|
RulePlanOuterJoins |
|
RulePlanProcedures |
|
RulePlanSorts |
Attempts to minimize the cost of sorting operations across the plan.
|
RulePlanSubqueries |
|
RulePlanSubqueries.PlannedResult |
|
RulePlanSubqueries.ReferenceReplacementVisitor |
Used to replace correlated references
|
RulePlanUnions |
Organizes union branches so that push down is possible.
|
RulePushAggregates |
|
RulePushLargeIn |
Look for large in predicates that were not pushed and push them as dependent set criteria
|
RulePushLimit |
Pushes limit nodes to their lowest points.
|
RulePushNonJoinCriteria |
Pushes on criteria out of the on clause if possible.
|
RulePushSelectCriteria |
|
RuleRaiseAccess |
|
RuleRaiseNull |
Will attempt to raise null nodes to their highest points
|
RuleRemoveOptionalJoins |
Removes optional join nodes if elements originating from that join are not used in the
top level project symbols.
|
RuleSubstituteExpressions |
Substitutes column references for expressions
|
RuleValidateWhereAll |
Validates that the any atomic query being sent to a model where the model
requires a criteria actually has a criteria.
|