Skip to content

Commit

Permalink
expression: rewrite builtin function: ADDDATE, SUBDATE (#4504)
Browse files Browse the repository at this point in the history
  • Loading branch information
zz-jason committed Sep 14, 2017
1 parent b812f32 commit 27f2594
Show file tree
Hide file tree
Showing 8 changed files with 730 additions and 270 deletions.
2 changes: 1 addition & 1 deletion executor/new_analyze.go
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ func (e *AnalyzeIndexExec) open() error {
}

func (e *AnalyzeIndexExec) buildHistogram() (hist *statistics.Histogram, err error) {
if err := e.open(); err != nil {
if err = e.open(); err != nil {
return nil, errors.Trace(err)
}
defer func() {
Expand Down
8 changes: 4 additions & 4 deletions expression/builtin.go
Original file line number Diff line number Diff line change
Expand Up @@ -729,7 +729,10 @@ var funcs = map[string]functionClass{
ast.Truncate: &truncateFunctionClass{baseFunctionClass{ast.Truncate, 2, 2}},

// time functions
ast.AddDate: &dateArithFunctionClass{baseFunctionClass{ast.AddDate, 3, 3}, ast.DateArithAdd},
ast.AddDate: &addDateFunctionClass{baseFunctionClass{ast.AddDate, 3, 3}},
ast.DateAdd: &addDateFunctionClass{baseFunctionClass{ast.DateAdd, 3, 3}},
ast.SubDate: &subDateFunctionClass{baseFunctionClass{ast.SubDate, 3, 3}},
ast.DateSub: &subDateFunctionClass{baseFunctionClass{ast.DateSub, 3, 3}},
ast.AddTime: &addTimeFunctionClass{baseFunctionClass{ast.AddTime, 2, 2}},
ast.ConvertTz: &convertTzFunctionClass{baseFunctionClass{ast.ConvertTz, 3, 3}},
ast.Curdate: &currentDateFunctionClass{baseFunctionClass{ast.Curdate, 0, 0}},
Expand All @@ -738,9 +741,7 @@ var funcs = map[string]functionClass{
ast.CurrentTimestamp: &nowFunctionClass{baseFunctionClass{ast.CurrentTimestamp, 0, 1}},
ast.Curtime: &currentTimeFunctionClass{baseFunctionClass{ast.Curtime, 0, 1}},
ast.Date: &dateFunctionClass{baseFunctionClass{ast.Date, 1, 1}},
ast.DateAdd: &dateArithFunctionClass{baseFunctionClass{ast.DateAdd, 3, 3}, ast.DateArithAdd},
ast.DateFormat: &dateFormatFunctionClass{baseFunctionClass{ast.DateFormat, 2, 2}},
ast.DateSub: &dateArithFunctionClass{baseFunctionClass{ast.DateSub, 3, 3}, ast.DateArithSub},
ast.DateDiff: &dateDiffFunctionClass{baseFunctionClass{ast.DateDiff, 2, 2}},
ast.Day: &dayOfMonthFunctionClass{baseFunctionClass{ast.Day, 1, 1}},
ast.DayName: &dayNameFunctionClass{baseFunctionClass{ast.DayName, 1, 1}},
Expand All @@ -767,7 +768,6 @@ var funcs = map[string]functionClass{
ast.SecToTime: &secToTimeFunctionClass{baseFunctionClass{ast.SecToTime, 1, 1}},
ast.Second: &secondFunctionClass{baseFunctionClass{ast.Second, 1, 1}},
ast.StrToDate: &strToDateFunctionClass{baseFunctionClass{ast.StrToDate, 2, 2}},
ast.SubDate: &dateArithFunctionClass{baseFunctionClass{ast.SubDate, 3, 3}, ast.DateArithSub},
ast.SubTime: &subTimeFunctionClass{baseFunctionClass{ast.SubTime, 2, 2}},
ast.Sysdate: &sysDateFunctionClass{baseFunctionClass{ast.Sysdate, 0, 1}},
ast.Time: &timeFunctionClass{baseFunctionClass{ast.Time, 1, 1}},
Expand Down
Loading

0 comments on commit 27f2594

Please sign in to comment.