Skip to content

Commit 66cc3bf

Browse files
committed
Add AUTO_DROP option parsing for CREATE STATISTICS
- Add AUTO_DROP option handling in parseCreateStatisticsStatement - Fix INCREMENTAL OptionState casing (On/Off instead of ON/OFF) - Enable Baselines160_CreateStatisticsStatementTests160 - Enable CreateStatisticsStatementTests160
1 parent 49059cc commit 66cc3bf

3 files changed

Lines changed: 26 additions & 3 deletions

File tree

parser/parse_statements.go

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8631,17 +8631,40 @@ func (p *Parser) parseCreateStatisticsStatement() (*ast.CreateStatisticsStatemen
86318631
if p.curTok.Type == TokenEquals {
86328632
p.nextToken()
86338633
state := strings.ToUpper(p.curTok.Literal)
8634+
optionState := "On"
8635+
if state == "OFF" {
8636+
optionState = "Off"
8637+
}
86348638
p.nextToken()
86358639
stmt.StatisticsOptions = append(stmt.StatisticsOptions, &ast.OnOffStatisticsOption{
86368640
OptionKind: "Incremental",
8637-
OptionState: state,
8641+
OptionState: optionState,
86388642
})
86398643
} else {
86408644
stmt.StatisticsOptions = append(stmt.StatisticsOptions, &ast.OnOffStatisticsOption{
86418645
OptionKind: "Incremental",
86428646
OptionState: "On",
86438647
})
86448648
}
8649+
case "AUTO_DROP":
8650+
if p.curTok.Type == TokenEquals {
8651+
p.nextToken()
8652+
state := strings.ToUpper(p.curTok.Literal)
8653+
optionState := "On"
8654+
if state == "OFF" {
8655+
optionState = "Off"
8656+
}
8657+
p.nextToken()
8658+
stmt.StatisticsOptions = append(stmt.StatisticsOptions, &ast.OnOffStatisticsOption{
8659+
OptionKind: "AutoDrop",
8660+
OptionState: optionState,
8661+
})
8662+
} else {
8663+
stmt.StatisticsOptions = append(stmt.StatisticsOptions, &ast.OnOffStatisticsOption{
8664+
OptionKind: "AutoDrop",
8665+
OptionState: "On",
8666+
})
8667+
}
86458668
default:
86468669
// Unknown option, skip
86478670
}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"todo": true}
1+
{}
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"todo": true}
1+
{}

0 commit comments

Comments
 (0)