Description:
When executing a RQG MDL/DDL workload, mysqld asserted as follows:
void Diagnostics_area::set_ok_status(THD*, ulonglong, ulonglong, const char*): Assertion `! is_set()' failed.
# 12:09:52 #6 0x000000315a42bec9 in __assert_fail () from /lib64/libc.so.6
# 12:09:52 #7 0x000000000058b672 in Diagnostics_area::set_ok_status (this=0x3717520, thd=0x3714ad8, affected_rows_arg=0, last_insert_id_arg=0, message_arg=0x0)
# 12:09:52 at /1tb/bzr/mysql-trunk-runtime-exp/sql/sql_error.cc:359
# 12:09:52 #8 0x0000000000554e2b in my_ok (thd=0x3714ad8, affected_rows=0, id=0, message=0x0) at /1tb/bzr/mysql-trunk-runtime-exp/sql/sql_class.h:2734
# 12:09:52 #9 0x00000000005ae6ee in mysql_execute_command (thd=0x3714ad8) at /1tb/bzr/mysql-trunk-runtime-exp/sql/sql_parse.cc:3803
# 12:09:52 #10 0x00000000005b1bcb in mysql_parse (thd=0x3714ad8,
# 12:09:52 inBuf=0x369d568 "CREATE EVENT IF NOT EXISTS testdb_S . e1_1_S ON SCHEDULE EVERY 10 SECOND STARTS NOW() ENDS NOW() + INTERVAL 21 SECOND ON COMPLETION NOT PRESERVE DO SELECT * FROM testdb_N . t1_view1_N LIMIT 1", length=193, found_semicolon=0x7fdafc731ed0)
# 12:09:52 at /1tb/bzr/mysql-trunk-runtime-exp/sql/sql_parse.cc:5871
# 12:09:52 #11 0x00000000005b27e6 in dispatch_command (command=COM_QUERY, thd=0x3714ad8,
# 12:09:52 packet=0x7fdaf006c3a9 "CREATE EVENT IF NOT EXISTS testdb_S . e1_1_S ON SCHEDULE EVERY 10 SECOND STARTS NOW() ENDS NOW() + INTERVAL 21 SECOND ON COMPLETION NOT PRESERVE DO SELECT * FROM testdb_N . t1_view1_N LIMIT 1", packet_length=193) at /1tb/bzr/mysql-trunk-runtime-exp/sql/sql_parse.cc:1023
# 12:09:52 #12 0x00000000005b3c95 in do_command (thd=0x3714ad8) at /1tb/bzr/mysql-trunk-runtime-exp/sql/sql_parse.cc:709
# 12:09:52 #13 0x000000000067e3fa in do_handle_one_connection (thd_arg=0x3714ad8) at /1tb/bzr/mysql-trunk-runtime-exp/sql/sql_connect.cc:1173
# 12:09:52 #14 0x000000000067e4c9 in handle_one_connection (arg=0x3714ad8) at /1tb/bzr/mysql-trunk-runtime-exp/sql/sql_connect.cc:1112
# 12:09:52 #15 0x000000315b0073da in start_thread () from /lib64/libpthread.so.0
# 12:09:52 #16 0x000000315a4e627d in clone () from /lib64/libc.so.6
The asserting query always seems to be CREATE EVENT
How to repeat:
It is hoped that this bug can be fixed based on core file alone, so one will be uploaded shortly. The RQG command line was:
# 12:05:09 # runall.pl \
# 12:05:09 # --grammar=conf/WL5004_sql.yy \
# 12:05:09 # --gendata=conf/WL5004_data.zz \
# 12:05:09 # --queries=1M \
# 12:05:09 # --duration=1200 \
# 12:05:09 # --reporters=Deadlock,ErrorLog,Backtrace,Shutdown \
# 12:05:09 # --mysqld=--innodb-lock-wait-timeout=1 \
# 12:05:09 # --mysqld=--loose-lock-wait-timeout=1 \
# 12:05:09 # --mysqld=--secure-file-priv=/tmp/ \
# 12:05:09 # --engine=MyISAM \
# 12:05:09 # --rows=10 \
# 12:05:09 # --threads=32 \
# 12:05:09 # --mysqld=--transaction-isolation=REPEATABLE-READ \
# 12:05:09 # --mysqld=--log-output=file \
# 12:05:09 # --mysqld=--innodb_flush_log_at_trx_commit=0 \
# 12:05:09 # --mask-level=1 \
# 12:05:09 # --mysqld=--open_files_limit=100 \
# 12:05:09 # --mysqld=--table_cache=10 \
# 12:05:09 # --mask=8169 \
# 12:05:09 # --queries=100000000 \
# 12:05:09 # --duration=600 \
# 12:05:09 # --basedir=/1tb/bzr/mysql-trunk-runtime-exp \
# 12:05:09 # --seed=time \
# 12:05:09 # --vardir=/1tb/vardir/experimental2/current