InnoDB: Failing assertion: bpage->in_flush_list in file buf0lru.c line 605 | abort in buf_flush_or_remove_pages
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| Percona Server moved to https://jira.percona.com/projects/PS |
Expired
|
Undecided
|
Unassigned | |
| 5.1 |
Invalid
|
Undecided
|
Unassigned | |
| 5.5 |
Expired
|
High
|
Unassigned | |
| 5.6 |
Expired
|
Undecided
|
Unassigned |
Bug Description
=======
130211 7:54:50 InnoDB: Assertion failure in thread 139821419931392 in file buf0lru.c line 605
InnoDB: Failing assertion: bpage->
=======
Thread 1 (LWP 24779):
+bt
#0 0x0000003da180c60c in pthread_kill () from /lib64/
#1 0x00000000007de9a8 in my_write_core (sig=6) at /ssd/QA-
#2 0x00000000006b3114 in handle_fatal_signal (sig=6) at /ssd/QA-
#3 <signal handler called>
#4 0x0000003da1435935 in raise () from /lib64/libc.so.6
#5 0x0000003da14370e8 in abort () from /lib64/libc.so.6
#6 0x00000000008fdc21 in buf_flush_
#7 buf_flush_
#8 buf_LRU_
#9 0x0000000000935050 in fil_delete_
#10 0x0000000000846cbf in row_drop_
#11 0x000000000081cdb5 in ha_innobase:
#12 0x00000000006b9a22 in handler:
#13 0x00000000006b9b1b in ha_delete_table (thd=0x39141a0, table_type=
#14 0x000000000060141b in quick_rm_table (base=base@
#15 0x000000000060ba7a in mysql_alter_table (thd=<optimized out>, new_db=<optimized out>, new_name=
#16 0x00000000007bd089 in Alter_table_
#17 0x00000000005a0b95 in mysql_execute_
#18 0x00000000005a1f2d in mysql_parse (thd=thd@
#19 0x00000000005a2a08 in dispatch_command (command=
#20 0x00000000005a3fc3 in do_command (thd=0x39141a0) at /ssd/QA-
#21 0x000000000064e11c in do_handle_
#22 0x000000000064e212 in handle_
#23 0x0000003da1807d14 in start_thread () from /lib64/
#24 0x0000003da14f168d in clone () from /lib64/libc.so.6
=======
From Laurynas: Analyzed, it's an easy fix. Looks like one missed case of bug 934377 and friends.
Related branches
- Laurynas Biveinis (community): Needs Fixing on 2013-05-16
- George Ormond Lorch III: Approve (g2) on 2013-02-25
-
Diff: 107 lines (+20/-13)1 file modifiedPercona-Server/storage/innobase/buf/buf0lru.c (+20/-13)
Roel Van de Paar (roel11) wrote : | #1 |
Roel Van de Paar (roel11) wrote : | #2 |
tags: |
added: xtradb removed: bitmap |
This bug needs re-verification, because the lazy drop table feature was removed and a number of other bugs have been fixed. A branch to use for that now is https:/
Roel Van de Paar (roel11) wrote : | #5 |
See bug 1205502
lp:percona-server/5.5 may be used for re-reverification now.
summary: |
InnoDB: Failing assertion: bpage->in_flush_list in file buf0lru.c line - 605 + 605 | abort in buf_flush_or_remove_pages |
Ramesh Sivaraman (rameshvs02) wrote : | #7 |
Got this issue in PS-5.5.
-------
Thread 1 (Thread 0x7fe8942ae700 (LWP 28020)):
+bt
#0 0x00007fe89a82469c in pthread_kill () from /lib64/
#1 0x0000000000803126 in my_write_core (sig=6) at /mnt/workspace/
#2 0x00000000006c3c09 in handle_fatal_signal (sig=6) at /mnt/workspace/
#3 <signal handler called>
#4 0x00007fe89909d8e5 in raise () from /lib64/libc.so.6
#5 0x00007fe89909f0c5 in abort () from /lib64/libc.so.6
#6 0x00000000008ce8ad in buf_flush_
#7 buf_flush_
#8 0x00000000008d14db in buf_LRU_
#9 0x0000000000903383 in fil_delete_
#10 0x000000000083be76 in row_drop_
#11 0x0000000000818710 in ha_innobase:
#12 0x00000000006cbf6a in handler:
#13 0x00000000006cc1c0 in ha_delete_table (thd=0x2529040, table_type=<value optimized out>, path=0x7fe8942ab690 "./test/t", db=0x7fe83c0053d8 "test", alias=0x7fe83c0
#14 0x0000000000612c41 in mysql_rm_
#15 0x0000000000613644 in mysql_rm_table (thd=0x2529040, tables=
#16 0x00000000005a8159 in mysql_execute_
#17 0x00000000005ab71c in mysql_parse (thd=0x2529040, rawbuf=
Roel Van de Paar (roel11) wrote : | #8 |
Laurynas, Ramesh added another occurence on 5.5 with full info (ref BUNDLE) - can you check bug again? Thanks.
Thread 31 (Thread 0x7fe880379700 (LWP 27989)):
+bt
#0 0x00007fe89a82343c in pthread_
#1 0x000000000095e366 in os_cond_wait (event=0x23225e0, reset_sig_
#2 os_event_wait_low (event=0x23225e0, reset_sig_
#3 0x0000000000865158 in sync_array_
#4 0x0000000000866bac in mutex_spin_wait (mutex=0x2021ea0, file_name=0xb390f0 "/mnt/workspace
#5 0x00000000008c454b in mutex_enter_func (mutex=0x2021ea0, file_name=0xb390f0 "/mnt/workspace
#6 pfs_mutex_
#7 0x00000000008c6581 in buf_flush_remove (bpage=
#8 0x00000000008c68ad in buf_flush_
#9 0x00000000008c42a0 in buf_page_
#10 0x00000000009051f3 in fil_aio_wait (segment=7) at /mnt/workspace/
#11 0x0000000000860b2f in io_handler_thread (arg=<value optimized out>) at /mnt/workspace/
#12 0x00007fe89a81f851 in start_thread () from /lib64/
#13 0x00007fe89915394d in clone () from /lib64/libc.so.6
Thread 19 (Thread 0x7fe875ac4700 (LWP 27998)):
+bt
#0 0x00007fe89a82343c in pthread_
#1 0x000000000095e366 in os_cond_wait (event=0x2022140, reset_sig_
#2 os_event_wait_low (event=0x2022140, reset_sig_
The buffer page causing assert failure is
$14 = {space = 0, offset = 347, state = 5, flush_type = 2, io_fix = 0, buf_fix_count = 0, buf_pool_index = 0, zip = {data = 0x0, m_start = 0, m_end = 0, m_nonempty = 0, n_blobs = 0, ssize = 0},
hash = 0x0, in_page_hash = 1, in_zip_hash = 0, free = {prev = 0x7fe887fa5b80, next = 0x0}, flush_list = {prev = 0x7fe887e21500, next = 0x7fe887e18e00}, zip_list = {prev = 0x0, next = 0x0},
in_flush_list = 0, in_free_list = 0, newest_modification = 237665306, oldest_modification = 0, LRU = {prev = 0x7fe887ff9d00, next = 0x7fe887f613c0}, in_LRU_list = 1, old = 0,
freed_page_clock = 106800, access_time = 1008817778, is_corrupt = 0, file_page_was_freed = 0}
Besides in_flush_list mismatch there are some other questions (why flush_type = BUF_FLUSH_LIST, in_page_hash = TRUE but both hash table pointers NULL)
All the relevant code places seem to update the flush list presence and in_flush_list flag correctly. I am unable to tell from the stacks at #7 how this crash happened.
Please update if you ever encounter this again.
Changed in percona-server: | |
status: | New → Incomplete |
Launchpad Janitor (janitor) wrote : | #11 |
[Expired for Percona Server 5.5 because there has been no activity for 60 days.]
Launchpad Janitor (janitor) wrote : | #12 |
[Expired for Percona Server because there has been no activity for 60 days.]
Changed in percona-server: | |
status: | Incomplete → Expired |
Launchpad Janitor (janitor) wrote : | #13 |
[Expired for Percona Server 5.6 because there has been no activity for 60 days.]
Percona now uses JIRA for bug reports so this bug report is migrated to: https:/
Related: bug 934377, bug 1110102, bug 1111211, bug 1116447.
The fix needs bug 1086680 fix as well (another instance where the new mutex has to be acquired).