Commit 03a0eb63 authored by unknown's avatar unknown
Browse files

Merge ahristov@bk-internal.mysql.com:/home/bk/mysql-5.1-new

into lmy004.:/work/mysql-5.1-bug16410

parents 2d94ee29 2557f80f
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -361,4 +361,8 @@ show processlist;
Id	User	Host	db	Command	Time	State	Info
#	root	localhost	events_test	Query	#	NULL	show processlist
drop event закачка21;
create table t_16 (s1 int);
create trigger t_16_bi before insert on t_16 for each row create event  e_16 on schedule every 1 second do set @a=5;
ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
drop table t_16;
drop database events_test;
+11 −0
Original line number Diff line number Diff line
@@ -323,6 +323,17 @@ select release_lock("test_lock2_1");
show processlist;
drop event закаÑка21;

####
# Bug #16410  Events: CREATE EVENT is legal in a CREATE TRIGGER statement
#
create table t_16 (s1 int);
--error 1422
create trigger t_16_bi before insert on t_16 for each row create event  e_16 on schedule every 1 second do set @a=5;
drop table t_16;
#
# end of test case
####

##set global event_scheduler=1;
##select get_lock("test_lock3", 20);
##create event закачка on schedule every 10 hour do select get_lock("test_lock3", 20);
+3 −0
Original line number Diff line number Diff line
@@ -255,6 +255,9 @@ sp_get_flags_for_command(LEX *lex)
  case SQLCOM_ALTER_FUNCTION:
  case SQLCOM_DROP_PROCEDURE:
  case SQLCOM_DROP_FUNCTION:
  case SQLCOM_CREATE_EVENT:
  case SQLCOM_ALTER_EVENT:
  case SQLCOM_DROP_EVENT:
    flags= sp_head::HAS_COMMIT_OR_ROLLBACK;
    break;
  default:
+6 −0
Original line number Diff line number Diff line
@@ -3773,6 +3773,12 @@ mysql_execute_command(THD *thd)
                       is_schema_db(lex->et->dbname.str)))
        break;

      if (end_active_trans(thd))
      {
        res= -1;
        break;
      }

      switch (lex->sql_command) {
      case SQLCOM_CREATE_EVENT:
        res= evex_create_event(thd, lex->et, (uint) lex->create_info.options,