Bug #18896 Events: crash if create within create
Submitted: 7 Apr 2006 17:41 Modified: 17 Sep 2006 5:43
Reporter: Peter Gulutzan Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Stored Routines Severity:S3 (Non-critical)
Version:5.1.9-beta-debug OS:Linux (SUSE 10.0)
Assigned to: Andrey Hristov CPU Architecture:Any

[7 Apr 2006 17:41] Peter Gulutzan
Description:
I put a CREATE EVENT statement within a CREATE EVENT statement.
Crash.

How to repeat:
mysql> create event e1 on schedule every 1 second do create event e2 on schedule every 1 second do set @a=5;
Query OK, 1 row affected (0.01 sec)

mysql> set global event_scheduler = 1;
Query OK, 0 rows affected (0.00 sec)

/* At this point, the server is gone. */
[7 Apr 2006 17:48] Peter Gulutzan
I also get a crash with ALTER EVENT inside CREATE EVENT:

create event e1 on schedule every 1 second do alter event e1 rename to e2;
[7 Apr 2006 18:02] MySQL Verification Team
Thank you for the bug report.

060407 15:03:15 [Note] /home/miguel/dbs/5.1/libexec/mysqld: ready for connections.
Version: '5.1.9-beta-debug'  socket: '/tmp/mysql.sock'  port: 3306  Source distribution
[New Thread 1119902640 (LWP 6301)]
[New Thread 1120103344 (LWP 6302)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1120103344 (LWP 6302)]
0x40256dc3 in strlen () from /lib/tls/libc.so.6
(gdb) bt full
#0  0x40256dc3 in strlen () from /lib/tls/libc.so.6
No symbol table info available.
#1  0x0866518d in strdup_root (root=0x926a014, str=0x0) at my_alloc.c:396
No locals.
#2  0x083911a0 in Event_timed::init_definer (this=0x926a320, thd=0x924c518) at event_timed.cc:469
        _db_func_ = 0x875512a "Event_timed::compile"
        _db_file_ = 0x8754a68 "event_timed.cc"
        _db_level_ = 3
        _db_framep_ = (char **) 0x88e9a40
#3  0x0823a909 in MYSQLparse (yythd=0x924c518) at sql_yacc.yy:1294
        lex = (LEX *) 0x9255c10
        yystate = 793
        yytoken = 359
<cut>
[4 May 2006 16:04] Andrey Hristov
The problem is that thd->security_ctx->priv_user is not set when the event is being compiled in Event_timed::compile().
[4 May 2006 17:35] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/5967
[9 May 2006 9:40] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:

  http://lists.mysql.com/commits/6139
[15 Sep 2006 15:12] Dmitry Lenev
Fixed in 5.1.12
[17 Sep 2006 5:43] Jon Stephens
Thank you for your bug report. This issue has been committed to our source repository of that product and will be incorporated into the next release.

If necessary, you can access the source repository and build the latest available version, including the bug fix. More information about accessing the source trees is available at

    http://dev.mysql.com/doc/en/installing-source.html

Documented bugfix in 5.1.12 changelog.

Updated Event Limitations in the 5.1 Manual.