Bug #57337 purge thread crashed with blobs: Failing assertion: extern_len - part_len == 0
Submitted: 8 Oct 2010 7:37 Modified: 28 Oct 2013 8:45
Reporter: Shane Bester (Platinum Quality Contributor) Email Updates:
Status: Can't repeat Impact on me:
None 
Category:MySQL Server: InnoDB storage engine Severity:S1 (Critical)
Version:5.0.72, 5.0.92 OS:Any
Assigned to: Marko Mäkelä CPU Architecture:Any

[8 Oct 2010 7:37] Shane Bester
Description:
with current updates, deletes, rollbacks on blob fields, purge thread died:

Version: '5.0.72-enterprise-gpl-debug'  socket: ''  port: 3306  MySQL Enterprise Server - Debug (GPL)
InnoDB: error in sec index entry del undo in
InnoDB: index `b` of table `test/t2`
...
101008  8:56:33InnoDB: Assertion failure in thread 5104 in file .\btr\btr0cur.c line 3606
InnoDB: Failing assertion: extern_len - part_len == 0

mysqld-debug.exe!btr_free_externally_stored_field()[btr0cur.c:3606]
mysqld-debug.exe!row_purge_upd_exist_or_extern()[row0purge.c:459]  
mysqld-debug.exe!row_purge()[row0purge.c:628]                      
mysqld-debug.exe!row_purge_step()[row0purge.c:666]                 
mysqld-debug.exe!que_thr_step()[que0que.c:1192]                    
mysqld-debug.exe!que_run_threads()[que0que.c:1248]                 
mysqld-debug.exe!trx_purge()[trx0purge.c:1129]                     
mysqld-debug.exe!srv_master_thread()[srv0srv.c:2370]               

full error log details attached.

How to repeat:
run debug binary + current dml workload on blob fields
[8 Oct 2010 7:38] MySQL Verification Team
more details...

Attachment: csc50212_some_crash_debug_binary.txt (text/plain), 19.44 KiB.

[8 Oct 2010 7:42] MySQL Verification Team
only publicly known occurrence of this crash was reported here:
http://steven1981.itpub.net/post/7967/487605
[8 Oct 2010 8:05] MySQL Verification Team
some more blob bugs, recently fixed:

bug #55543
bug #56173
bug #55981
[8 Oct 2010 15:36] MySQL Verification Team
see also bug #55143 that was never repeated.
[8 Oct 2010 18:04] MySQL Verification Team
my tests also involved some threads in read uncommitted isolation level.
must check if i hit bug #54358 ...
[28 Oct 2013 8:45] MySQL Verification Team
I have not seen this in recent times. It was likely fixed by a serious of fixes for other known bugs.