| Bug #58895 | InnoDB: Failing assertion: UT_LIST_GET_LEN(buf_pool->flush_list) == 0 | ||
|---|---|---|---|
| Submitted: | 13 Dec 2010 10:27 | Modified: | 12 Jan 2011 17:38 |
| Reporter: | Vasil Dimov | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Server: InnoDB storage engine | Severity: | S2 (Serious) |
| Version: | 5.6 | OS: | Any |
| Assigned to: | Inaam Rana | CPU Architecture: | Any |
[13 Dec 2010 10:27]
Vasil Dimov
[13 Dec 2010 10:30]
Vasil Dimov
Another non-deterministic failure with the same assertion failure (same pb2 run/same platform):
innodb.innodb_bug21704 [ fail ]
Test ended at 2010-12-12 13:50:30
CURRENT_TEST: innodb.innodb_bug21704
101212 15:50:28 InnoDB: The InnoDB memory heap is disabled
101212 15:50:28 InnoDB: Mutexes and rw_locks use GCC atomic builtins
101212 15:50:28 InnoDB: Compressed tables use zlib 1.2.3
101212 15:50:28 InnoDB: Initializing buffer pool, size = 8.0M
101212 15:50:28 InnoDB: Completed initialization of buffer pool
101212 15:50:28 InnoDB: highest supported file format is Barracuda.
101212 15:50:29 InnoDB: Error: in ALTER TABLE `test`.`t1`
InnoDB: has or is referenced in foreign key constraints
InnoDB: which are not compatible with the new table definition.
101212 15:50:29 InnoDB: Error: table `test`.`t1` does not exist in the InnoDB internal
InnoDB: data dictionary though MySQL is trying to drop it.
InnoDB: Have you copied the .frm file of the table to the
InnoDB: MySQL database directory from another database?
InnoDB: You can look for further help from
InnoDB: http://dev.mysql.com/doc/refman/5.6/en/innodb-troubleshooting.html
101212 15:50:29 InnoDB: Error: in ALTER TABLE `test`.`t2`
InnoDB: has or is referenced in foreign key constraints
InnoDB: which are not compatible with the new table definition.
101212 15:50:29 InnoDB: Error: table `test`.`t2` does not exist in the InnoDB internal
InnoDB: data dictionary though MySQL is trying to drop it.
InnoDB: Have you copied the .frm file of the table to the
InnoDB: MySQL database directory from another database?
InnoDB: You can look for further help from
InnoDB: http://dev.mysql.com/doc/refman/5.6/en/innodb-troubleshooting.html
101212 15:50:29 InnoDB: Error: in ALTER TABLE `test`.`t3`
InnoDB: has or is referenced in foreign key constraints
InnoDB: which are not compatible with the new table definition.
101212 15:50:29 InnoDB: Error: table `test`.`t3` does not exist in the InnoDB internal
InnoDB: data dictionary though MySQL is trying to drop it.
InnoDB: Have you copied the .frm file of the table to the
InnoDB: MySQL database directory from another database?
InnoDB: You can look for further help from
InnoDB: http://dev.mysql.com/doc/refman/5.6/en/innodb-troubleshooting.html
101212 15:50:29 InnoDB: Error: in ALTER TABLE `test`.`t3`
InnoDB: has or is referenced in foreign key constraints
InnoDB: which are not compatible with the new table definition.
101212 15:50:29 InnoDB: Error: table `test`.`t3` does not exist in the InnoDB internal
InnoDB: data dictionary though MySQL is trying to drop it.
InnoDB: Have you copied the .frm file of the table to the
InnoDB: MySQL database directory from another database?
InnoDB: You can look for further help from
InnoDB: http://dev.mysql.com/doc/refman/5.6/en/innodb-troubleshooting.html
101212 15:50:29 InnoDB: Assertion failure in thread 1204214080 in file /export/home3/pb2/build/sb_2-2657467-1292147995.99/mysql-5.6.1-m5/storage/innobase/buf/buf0flu.c line 2440
InnoDB: Failing assertion: UT_LIST_GET_LEN(buf_pool->flush_list) == 0
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.6/en/forcing-recovery.html
InnoDB: about forcing recovery.
mysqltest got signal 6
read_command_buf (0x1013720):
mysqltest got signal 11
read_command_buf (0x1013720):
- saving '/export/home2/pb2/test/sb_1-2657502-1292148363.25/mysql-5.6.1-m5-linux-x86_64-test/mysql-test/var-emebbed/log/innodb.innodb_bug21704/' to '/export/home2/pb2/test/sb_1-2657502-1292148363.25/mysql-5.6.1-m5-linux-x86_64-test/mysql-test/var-emebbed/log/innodb.innodb_bug21704/'
Retrying test innodb.innodb_bug21704, attempt(2/3)...
innodb.innodb_bug21704 [ retry-pass ] 737
Retrying test innodb.innodb_bug21704, attempt(3/3)...
innodb.innodb_bug21704 [ retry-pass ] 702
[13 Dec 2010 10:48]
Vasil Dimov
Another one, same pb2 run, but on win x86_64 debug_max
main.innodb_icp w2 [ fail ]
Test ended at 2010-12-12 12:57:57
CURRENT_TEST: main.innodb_icp
101212 12:57:34 InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
101212 12:57:34 InnoDB: The InnoDB memory heap is disabled
101212 12:57:34 InnoDB: Mutexes and rw_locks use Windows interlocked functions
101212 12:57:34 InnoDB: Compressed tables use zlib 1.2.3
101212 12:57:34 InnoDB: Initializing buffer pool, size = 8.0M
101212 12:57:34 InnoDB: Completed initialization of buffer pool
101212 12:57:35 InnoDB: highest supported file format is Barracuda.
101212 12:57:56 InnoDB: Assertion failure in thread 6664 in file .\buf\buf0flu.c line 2440
InnoDB: Failing assertion: UT_LIST_GET_LEN(buf_pool->flush_list) == 0
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.6/en/forcing-recovery.html
InnoDB: about forcing recovery.
mysqltest got exception 0xc0000005
read_command_buf (0000000140A1F4F0): =
conn->name (DDDDDDDDDDDDDDDD): =is an invalid string pointer
conn->cur_query (DDDDDDDDDDDDDDDD): =is an invalid string pointer
Attempting backtrace...
000000013FDA94F5 mysqltest_embedded.exe!buf_flush_page_cleaner_thread()[buf0flu.c:2440]
000000007762BE3D kernel32.dll!BaseThreadInitThunk()
0000000077836A51 ntdll.dll!RtlUserThreadStart()
Writing a core file...
Minidump written to G:\pb2\test\sb_1-2657687-1292150011.37\mysql-5.6.1-m5-win-x86_64-test\mysql-test\mysqltest_embedded.dmp
mysqltest failed with unexpected return code 5
- saving 'G:/pb2/test/sb_1-2657687-1292150011.37/mysql-5.6.1-m5-win-x86_64-test/mysql-test/var-emebbed/2/log/main.innodb_icp/' to 'G:/pb2/test/sb_1-2657687-1292150011.37/mysql-5.6.1-m5-win-x86_64-test/mysql-test/var-emebbed/log/main.innodb_icp/'
- found 'mysqltest_embedded.dmp', moving it to 'G:/pb2/test/sb_1-2657687-1292150011.37/mysql-5.6.1-m5-win-x86_64-test/mysql-test/var-emebbed/log/main.innodb_icp'
- found 'mysqltest_embedded.dmp' (0/5)
Trying 'cdb' to get a backtrace
OS debug symbols will be downloaded and stored in C:\cdb_symbols.
You can control the location of symbol cache with _NT_SYMBOL_PATH
environment variable. Please refer to Microsoft KB article
http://support.microsoft.com/kb/311503 for details about _NT_SYMBOL_PATH
-------------------------------------------------------------------------
Output from cdb follows. Faulting thread is printed twice,with and without function parameters
Search for STACK_TEXT to see the stack trace of
the faulting thread. Callstacks of other threads are printed after it.
Microsoft (R) Windows Debugger Version 6.11.0001.402 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.
Loading Dump File [G:\pb2\test\sb_1-2657687-1292150011.37\mysql-5.6.1-m5-win-x86_64-test\mysql-test\var-emebbed\log\main.innodb_icp\mysqltest_embedded.dmp]
User Mini Dump File: Only registers, stack and portions of memory are available
Symbol search path is: C:\Windows\System32;G:\pb2\test\sb_1-2657687-1292150011.37\mysql-5.6.1-m5-win-x86_64-test\libmysqld\examples\Debug;.;srv*C:\cdb_symbols*http://msdl.microsoft.com/download/symbols
Executable search path is: C:\Windows\System32;G:\pb2\test\sb_1-2657687-1292150011.37\mysql-5.6.1-m5-win-x86_64-test\libmysqld\examples\Debug;.
Windows Server 2008/Windows Vista Version 6002 (Service Pack 2) MP (8 procs) Free x64
Product: Server, suite: Enterprise TerminalServer SingleUserTS
Machine Name:
Debug session time: Sun Dec 12 12:57:56.000 2010 (GMT+1)
System Uptime: not available
Process Uptime: 0 days 0:00:22.000
.............................
This dump file has an exception of interest stored in it.
The stored exception information can be accessed via .ecxr.
(2528.1a08): Access violation - code c0000005 (first/second chance not available)
ntdll!ZwGetContextThread:
ret
0:008> cdb: Reading initial command '!sym prompts off; !analyze -v; .ecxr; !for_each_frame dv /t;!uniqstack -p;q'
quiet mode - symbol prompts off
FAULTING_IP:
mysqltest_embedded!buf_flush_page_cleaner_thread+525 [g:\pb2\build\sb_0-2657467-1292148950.7\mysql-5.6.1-m5-win-x86_64\storage\innobase\buf\buf0flu.c @ 2440]
cmp qword ptr [r11],0
EXCEPTION_RECORD: ffffffffffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 000000013fda94f5 (mysqltest_embedded!buf_flush_page_cleaner_thread)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 0000000000000000
Parameter[1]: 0000000000000000
Attempt to read from address 0000000000000000
DEFAULT_BUCKET_ID: NULL_POINTER_READ
PROCESS_NAME: mysqltest_embedded.exe
ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%08lx referenced memory at 0x%08lx. The memory could not be %s.
EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - The instruction at 0x%08lx referenced memory at 0x%08lx. The memory could not be %s.
EXCEPTION_PARAMETER1: 0000000000000000
EXCEPTION_PARAMETER2: 0000000000000000
READ_ADDRESS: 0000000000000000
FOLLOWUP_IP:
mysqltest_embedded!buf_flush_page_cleaner_thread+525 [g:\pb2\build\sb_0-2657467-1292148950.7\mysql-5.6.1-m5-win-x86_64\storage\innobase\buf\buf0flu.c @ 2440]
cmp qword ptr [r11],0
FAULTING_THREAD: 0000000000001a08
PRIMARY_PROBLEM_CLASS: NULL_POINTER_READ
BUGCHECK_STR: APPLICATION_FAULT_NULL_POINTER_READ
LAST_CONTROL_TRANSFER: from 000000007762be3d to 000000013fda94f5
STACK_TEXT:
mysqltest_embedded!buf_flush_page_cleaner_thread [g:\pb2\build\sb_0-2657467-1292148950.7\mysql-5.6.1-m5-win-x86_64\storage\innobase\buf\buf0flu.c @ 2440]
kernel32!BaseThreadInitThunk
ntdll!RtlUserThreadStart
STACK_COMMAND: ~8s; .ecxr ; kb
SYMBOL_STACK_INDEX: 0
SYMBOL_NAME: mysqltest!buf_flush_page_cleaner_thread+525
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: mysqltest_embedded
IMAGE_NAME: mysqltest_embedded.exe
DEBUG_FLR_IMAGE_TIMESTAMP: 4d04a405
FAILURE_BUCKET_ID: NULL_POINTER_READ_c0000005_mysqltest_embedded.exe!buf_flush_page_cleaner_thread
BUCKET_ID: X64_APPLICATION_FAULT_NULL_POINTER_READ_mysqltest!buf_flush_page_cleaner_thread+525
WATSON_STAGEONE_URL: http://watson.microsoft.com/StageOne/mysqltest_embedded_exe/5_6_1_0/4d04a405/mysqltest_emb...
Followup: MachineOwner
---------
rax=0000000000000000 rbx=0000000000000000 rcx=0000000140aef3f0
rdx=0000000000000000 rsi=0000000000000000 rdi=0000000003d4fa50
rip=000000013fda94f5 rsp=0000000003d4f9d0 rbp=0000000000000000
r8=0000000000000000 r9=0000000000000000 r10=63657220676e6963
r11=0000000000000000 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei pl nz na po nc
cs=0033 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010206
mysqltest_embedded!buf_flush_page_cleaner_thread:
cmp qword ptr [r11],0 ds:00000000`00000000=????????????????
...
Retrying test main.innodb_icp, attempt(2/3)...
main.innodb_icp w2 [ retry-pass ] 15230
[13 Dec 2010 23:17]
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/126710 3383 Inaam Rana 2010-12-13 bug#58895 InnoDB: Failing assertion: UT_LIST_GET_LEN(buf_pool->flush_list) == 0 A race introduced by page_cleaner patch where it is possible to miss the final round of flushing if the page_cleaner has an unfinished batch already running from previous phase. Approved by: Sunny
[22 Dec 2010 21:31]
Bugs System
Pushed into mysql-trunk 5.6.1 (revid:alexander.nozdrin@oracle.com-20101222212842-y0t3ibtd32wd9qaw) (version source revid:alexander.nozdrin@oracle.com-20101222212842-y0t3ibtd32wd9qaw) (merge vers: 5.6.1) (pib:24)
[22 Mar 2017 22:57]
Roel Van de Paar
See bug 85585
