Skip to content

Commit d601f70

Browse files
authored
Merge branch 'main' into feat/schema-introspection
2 parents e395b32 + 7110956 commit d601f70

8 files changed

Lines changed: 1736 additions & 2 deletions

File tree

pkg/advisor/advisor_advanced_test.go

Lines changed: 664 additions & 0 deletions
Large diffs are not rendered by default.

pkg/advisor/optimizer_test.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -976,8 +976,8 @@ func TestFormatResult(t *testing.T) {
976976

977977
func TestDefaultRules(t *testing.T) {
978978
rules := DefaultRules()
979-
if len(rules) != 8 {
980-
t.Errorf("expected 8 default rules, got %d", len(rules))
979+
if len(rules) != 20 {
980+
t.Errorf("expected 20 default rules, got %d", len(rules))
981981
}
982982

983983
ids := make(map[string]bool)
@@ -1006,6 +1006,9 @@ func TestRuleMetadata(t *testing.T) {
10061006
expectedIDs := []string{
10071007
"OPT-001", "OPT-002", "OPT-003", "OPT-004",
10081008
"OPT-005", "OPT-006", "OPT-007", "OPT-008",
1009+
"OPT-009", "OPT-010", "OPT-011", "OPT-012",
1010+
"OPT-013", "OPT-014", "OPT-015", "OPT-016",
1011+
"OPT-017", "OPT-018", "OPT-019", "OPT-020",
10091012
}
10101013

10111014
for i, rule := range rules {

pkg/advisor/rules.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import (
2424
// DefaultRules returns the default set of all built-in optimization rules.
2525
func DefaultRules() []Rule {
2626
return []Rule{
27+
// OPT-001 through OPT-008: original rules
2728
&SelectStarRule{},
2829
&MissingWhereRule{},
2930
&CartesianProductRule{},
@@ -32,6 +33,19 @@ func DefaultRules() []Rule {
3233
&OrInWhereRule{},
3334
&LeadingWildcardLikeRule{},
3435
&FunctionOnColumnRule{},
36+
// OPT-009 through OPT-020: advanced rules
37+
&CorrelatedSubqueryInSelectRule{},
38+
&HavingWithoutGroupByRule{},
39+
&RedundantOrderByInCTERule{},
40+
&ImplicitTypeConversionRule{},
41+
&OrToInConversionRule{},
42+
&NotInSubqueryNullRule{},
43+
&MissingLimitRule{},
44+
&UnusedAliasRule{},
45+
&UnionDeduplicationRule{},
46+
&CountStarRule{},
47+
&DeepSubqueryNestingRule{},
48+
&ExplicitCrossJoinRule{},
3549
}
3650
}
3751

0 commit comments

Comments
 (0)