Bug #49614 Assertion `!_entered' failed on RESTORE
Submitted: 11 Dec 2009 9:30 Modified: 2 Mar 2010 1:39
Reporter: Philip Stoev Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Backup Severity:S3 (Non-critical)
Version:6.0-backup OS:Any
Assigned to: Alfranio Correia CPU Architecture:Any
Triage: Triaged: D1 (Critical)

[11 Dec 2009 9:30] Philip Stoev
Description:
When executing a RESTORE, mysqld asserted as follows:

mysqld: ../include/my_dbug.h:29: Dbug_violation_helper::~Dbug_violation_helper(): Assertion `!_entered' failed.

#6  0x000000315a42bec9 in __assert_fail () from /lib64/libc.so.6
#7  0x000000000057e334 in ~Dbug_violation_helper (this=0x7f57bc243f1f) at ../../include/my_dbug.h:29
#8  0x00000000009d564c in Table_restore (this=0x7f57b843d8f0, tbl=@0x7f57bc243fa0) at myisam_backup_engine.cc:1755
#9  0x00000000009d5790 in myisam_backup::Restore::send_data (this=0x7f57b84859e0, buf=@0x7f57bc245080) at myisam_backup_engine.cc:1565
#10 0x0000000000adfb7b in backup::restore_table_data (thd=0x7f57b828a2e8, info=@0x287ff70, s=@0x28cb1c0) at data_backup.cc:1793
#11 0x0000000000ad84dc in Backup_restore_ctx::do_restore (this=0x7f57bc2451f0, overwrite=true) at kernel.cc:1671
#12 0x0000000000ada652 in execute_backup_command (thd=0x7f57b828a2e8, lex=0x7f57b828bbc0, backupdir=0x7f57bc246170, overwrite=true, skip_gap_event=false)
    at kernel.cc:296
#13 0x0000000000685aeb in mysql_execute_command (thd=0x7f57b828a2e8) at sql_parse.cc:2482
#14 0x000000000068d71b in mysql_parse (thd=0x7f57b828a2e8,
    inBuf=0x281e350 "RESTORE FROM '/tmp/gentest23364-1260523340.66514-0.778491240570428.tmp' OVERWRITE", length=81, found_semicolon=0x7f57bc246f00)
    at sql_parse.cc:5985
#15 0x000000000068e2ac in dispatch_command (command=COM_QUERY, thd=0x7f57b828a2e8,
    packet=0x7f57b8292859 "RESTORE FROM '/tmp/gentest23364-1260523340.66514-0.778491240570428.tmp' OVERWRITE", packet_length=81) at sql_parse.cc:1078
#16 0x000000000068f81e in do_command (thd=0x7f57b828a2e8) at sql_parse.cc:760
#17 0x000000000067c644 in handle_one_connection (arg=0x7f57b828a2e8) at sql_connect.cc:1164
#18 0x000000315b0073da in start_thread () from /lib64/libpthread.so.0
#19 0x000000315a4e627d in clone () from /lib64/libc.so.6

How to repeat:
If this is repeatable, a test case will be provided. In the meantime, the core and the binary will be made available.
[11 Dec 2009 9:34] Philip Stoev
Core and binary:

http://mysql-systemqa.s3.amazonaws.com/var-bug49614.zip

code:

revision-id: charles.bell@sun.com-20091210145408-p0iehjnv6qwzg4xv
date: 2009-12-10 09:54:08 -0500
build-date: 2009-12-11 11:31:02 +0200
revno: 2907
branch-nick: mysql-6.0-backup
[18 Dec 2009 11: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/94933

2920 Alfranio Correia	2009-12-18
      BUG#49614 Assertion `!_entered' failed on RESTORE
      
      Missing DBUG_VOID_RETURN in myisam_backup_engine.cc:Table_restore
      was causing the assertion failure.
[18 Dec 2009 11:46] Ingo Strüwing
Approved.
[18 Dec 2009 14:24] Ritheesh Vedire
Patch Approved.
[20 Feb 2010 9:17] Bugs System
Pushed into 6.0.14-alpha (revid:ingo.struewing@sun.com-20100218152520-s4v1ld76bif06eqn) (version source revid:ingo.struewing@sun.com-20100119103538-wtp5alpz4p2jayl5) (merge vers: 6.0.14-alpha) (pib:16)
[2 Mar 2010 1:39] Paul Dubois
Noted in 6.0.14 changelog.

For debug builds, a missing DEBUG_VOID_RETURN caused RESTORE to raise
an assertion.