summaryrefslogtreecommitdiff
path: root/sql/event_data_objects.cc
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2018-08-16 10:08:30 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2018-08-16 10:08:30 +0300
commit734db318ac69f60959bcd0d6c9116a3681449a38 (patch)
treecb8ccd4ecfebe752ec559834d3bf083efb9c8cd4 /sql/event_data_objects.cc
parentb151cc2b0b1fc938de91035fbafc46667d9019e3 (diff)
parent8716bb3b72b7f5fed69b6dde413c2138f6d175b2 (diff)
downloadmariadb-git-734db318ac69f60959bcd0d6c9116a3681449a38.tar.gz
Merge 10.3 into 10.4
Diffstat (limited to 'sql/event_data_objects.cc')
-rw-r--r--sql/event_data_objects.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/sql/event_data_objects.cc b/sql/event_data_objects.cc
index 19cb4865ee6..02da3c31c3e 100644
--- a/sql/event_data_objects.cc
+++ b/sql/event_data_objects.cc
@@ -1284,7 +1284,11 @@ Event_job_data::construct_sp_sql(THD *thd, String *sp_sql)
*/
sp_sql->append(STRING_WITH_LEN("() SQL SECURITY INVOKER "));
+ if (thd->variables.sql_mode & MODE_ORACLE)
+ sp_sql->append(STRING_WITH_LEN(" AS BEGIN "));
sp_sql->append(&body);
+ if (thd->variables.sql_mode & MODE_ORACLE)
+ sp_sql->append(STRING_WITH_LEN("; END"));
DBUG_RETURN(thd->is_fatal_error);
}
@@ -1387,9 +1391,6 @@ Event_job_data::execute(THD *thd, bool drop)
goto end;
}
- if (construct_sp_sql(thd, &sp_sql))
- goto end;
-
/*
Set up global thread attributes to reflect the properties of
this Event. We can simply reset these instead of usual
@@ -1401,6 +1402,9 @@ Event_job_data::execute(THD *thd, bool drop)
thd->variables.sql_mode= sql_mode;
thd->variables.time_zone= time_zone;
+ if (construct_sp_sql(thd, &sp_sql))
+ goto end;
+
thd->set_query(sp_sql.c_ptr_safe(), sp_sql.length());
{