Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -49,12 +49,9 @@ private PinotQueryRuleSets() {
// push project through set operation
CoreRules.PROJECT_SET_OP_TRANSPOSE,

// aggregation and projection rules
CoreRules.AGGREGATE_PROJECT_PULL_UP_CONSTANTS,
// push a projection past a filter or vice versa
CoreRules.PROJECT_FILTER_TRANSPOSE, CoreRules.FILTER_PROJECT_TRANSPOSE,
// push a projection to the children of a join
// push all expressions to handle the time indicator correctly
// push a filter past a project
CoreRules.FILTER_PROJECT_TRANSPOSE,
// push parts of the join condition to its inputs
CoreRules.JOIN_CONDITION_PUSH,
// remove identity project
CoreRules.PROJECT_REMOVE,
Expand All @@ -64,14 +61,19 @@ private PinotQueryRuleSets() {
// push project through WINDOW
CoreRules.PROJECT_WINDOW_TRANSPOSE,

// TODO: Revisit and see if they can be replaced with CoreRules.PROJECT_REDUCE_EXPRESSIONS and
// CoreRules.FILTER_REDUCE_EXPRESSIONS
// literal rules
// TODO: Revisit and see if they can be replaced with
// CoreRules.PROJECT_REDUCE_EXPRESSIONS and
// CoreRules.FILTER_REDUCE_EXPRESSIONS
PinotEvaluateLiteralRule.Project.INSTANCE, PinotEvaluateLiteralRule.Filter.INSTANCE,

// sort join rules
// TODO: evaluate the SORT_JOIN_TRANSPOSE and SORT_JOIN_COPY rules

// join rules
CoreRules.JOIN_PUSH_EXPRESSIONS,

// join and semi-join rules
CoreRules.PROJECT_TO_SEMI_JOIN,
PinotAggregateToSemiJoinRule.INSTANCE,

Expand Down