mirror of
https://github.com/MariaDB/server.git
synced 2026-05-15 19:37:16 +02:00
fix for bug#16434 (Events: Illegal dates don't cause errors)
(post-review commit) WL#1034 (Internal CRON) sql/event_timed.cc: remove bogus check sql/share/errmsg.txt: change error messages sql/sql_yacc.yy: handle error code returned by event_timed::init_starts()
This commit is contained in:
parent
14c38f001b
commit
8b3b76c6d4
3 changed files with 20 additions and 5 deletions
|
|
@ -238,9 +238,6 @@ event_timed::init_starts(THD *thd, Item *new_starts)
|
||||||
if (new_starts->fix_fields(thd, &new_starts))
|
if (new_starts->fix_fields(thd, &new_starts))
|
||||||
DBUG_RETURN(EVEX_PARSE_ERROR);
|
DBUG_RETURN(EVEX_PARSE_ERROR);
|
||||||
|
|
||||||
if (new_starts->val_int() == MYSQL_TIMESTAMP_ERROR)
|
|
||||||
DBUG_RETURN(EVEX_BAD_PARAMS);
|
|
||||||
|
|
||||||
if ((not_used= new_starts->get_date(<ime, TIME_NO_ZERO_DATE)))
|
if ((not_used= new_starts->get_date(<ime, TIME_NO_ZERO_DATE)))
|
||||||
DBUG_RETURN(EVEX_BAD_PARAMS);
|
DBUG_RETURN(EVEX_BAD_PARAMS);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5760,7 +5760,7 @@ ER_EVENT_DROP_FAILED
|
||||||
ER_EVENT_INTERVAL_NOT_POSITIVE
|
ER_EVENT_INTERVAL_NOT_POSITIVE
|
||||||
eng "INTERVAL must be positive"
|
eng "INTERVAL must be positive"
|
||||||
ER_EVENT_ENDS_BEFORE_STARTS
|
ER_EVENT_ENDS_BEFORE_STARTS
|
||||||
eng "ENDS must be after STARTS"
|
eng "ENDS is either invalid or before STARTS"
|
||||||
ER_EVENT_EXEC_TIME_IN_THE_PAST
|
ER_EVENT_EXEC_TIME_IN_THE_PAST
|
||||||
eng "Activation (AT) time is in the past"
|
eng "Activation (AT) time is in the past"
|
||||||
ER_EVENT_OPEN_TABLE_FAILED
|
ER_EVENT_OPEN_TABLE_FAILED
|
||||||
|
|
|
||||||
|
|
@ -1467,7 +1467,25 @@ ev_starts: /* empty */
|
||||||
{
|
{
|
||||||
LEX *lex= Lex;
|
LEX *lex= Lex;
|
||||||
if (!lex->et_compile_phase)
|
if (!lex->et_compile_phase)
|
||||||
lex->et->init_starts(YYTHD, $2);
|
{
|
||||||
|
|
||||||
|
switch (lex->et->init_starts(YYTHD, $2)) {
|
||||||
|
case EVEX_PARSE_ERROR:
|
||||||
|
yyerror(ER(ER_SYNTAX_ERROR));
|
||||||
|
YYABORT;
|
||||||
|
break;
|
||||||
|
case EVEX_BAD_PARAMS:
|
||||||
|
{
|
||||||
|
char buff[20];
|
||||||
|
String str(buff,(uint32) sizeof(buff), system_charset_info);
|
||||||
|
String *str2= $2->val_str(&str);
|
||||||
|
my_error(ER_WRONG_VALUE, MYF(0), "STARTS", str2? str2->c_ptr():
|
||||||
|
NULL);
|
||||||
|
YYABORT;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue