Assertion open_tables == 0 && temporary_tables == 0 && handler_tables == 0 && derived_tables == 0 && lock == 0 && locked_tables == 0 && prelocked_mode == NON_PRELOCKED && m_reprepare_observer == __null in THD::restore_backup_open_tables_state(Open_tables_state*)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MariaDB |
Fix Released
|
Medium
|
Michael Widenius |
Bug Description
Version: '5.3.4-
mysqld: sql_class.cc:3443: void THD::restore_
[ERROR] mysqld got signal 6 ;
#6 0x00007ff27d674235 in __assert_fail () from /lib64/libc.so.6
#7 0x00000000006ccdeb in THD::restore_
at sql_class.cc:3439
#8 0x000000000075da9d in open_performanc
backup=
#9 0x00000000007e09e8 in Log_to_
event_time=..., user_host=
command_
sql_
#10 0x00000000007e27f3 in LOGGER:
query=0x2886d40 "SELECT DATABASE()", query_length=17) at log.cc:1109
#11 0x00000000007ec8ce in general_log_write (thd=0x7ff26107
query=0x2886d40 "SELECT DATABASE()", query_length=17) at log.cc:4815
#12 0x00000000006f373f in dispatch_command (command=COM_QUERY, thd=0x7ff26107daa8,
packet=
#13 0x00000000006f2b44 in do_command (thd=0x7ff26107
#14 0x00000000006efa22 in handle_
#15 0x00007ff27e32fa4f in start_thread () from /lib64/
#16 0x00007ff27d71982d in clone () from /lib64/libc.so.6
Query (0x2886d40): SELECT DATABASE()
Connection ID (thread ID): 12
Status: NOT_KILLED
bzr version-info
revision-id: <email address hidden>
date: 2012-02-16 20:15:57 +0400
build-date: 2012-02-16 21:51:16 +0200
revno: 3424
Could not reproduce on maria-5.5, mysql-5.1.60, mysql-5.5.20; however, the RQG test is not deterministic.
If you don't get the failure, try a few times, also changing the number of threads might help.
perl runall.pl \
--no-mask \
--threads=16 \
--duration=600 \
--queries=100M \
--grammar=./test.yy \
--views \
--engine=MyISAM \
--mysqld=
--vardir=<your vardir> \
--basedir=<debug basedir>
# cat test.yy
query:
update | trigger ;
dml:
insert | update | delete ;
insert:
INSERT INTO view_table ( _field ) VALUES ( value ) ;
update:
UPDATE view SET _field = value where ;
delete:
DELETE FROM view_table where LIMIT 1 ;
trigger:
CREATE TRIGGER _letter AFTER UPDATE ON table FOR EACH ROW BEGIN dml ; dml ; dml ; END ;
where:
WHERE _field > value | WHERE _field < value ;
value:
_digit ;
view_table:
view | table ;
table:
A | AA | B | BB | C | CC ;
view:
view_A | view_AA | view_B | view_BB | view_C | view_CC ;
# EOF
Changed in maria: | |
importance: | Undecided → Medium |
Changed in maria: | |
assignee: | Sergei (sergii) → Michael Widenius (monty) |
status: | New → In Progress |
Changed in maria: | |
status: | In Progress → Fix Released |
Fixed in 5.3
(Crash happens when using logging to tables and one was running a stored procedures/trigger while the table definition was changed (by adding a trigger)