Bug #82387 mysqld was restarted. It maybe cause by index page corruption.
Submitted: 30 Jul 2016 8:41 Modified: 3 Aug 2016 5:54
Reporter: 李 源錫 Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server Severity:S1 (Critical)
Version:5.6.25 OS:CentOS (6.4)
Assigned to: CPU Architecture:Any

[30 Jul 2016 8:41] 李 源錫
Description:
mysqld is restarted every a few week.
mysqld error log is below.
---
2016-07-30 15:22:43 7f29c418d700  InnoDB: Assertion failure in thread 139817360348928 in file btr0cur.cc line 297
InnoDB: Failing assertion: btr_page_get_prev(get_block->frame, mtr) == page_get_page_no(page)
...
06:22:43 UTC - mysqld got signal 6 ;
...
key_buffer_size=134217728
read_buffer_size=131072
max_used_connections=9
max_threads=300
thread_count=2
connection_count=0
It is possible that mysqld could use up to 
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 787706 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.

Thread pointer: 0x7f299c4506d0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 7f29c418c7e0 thread_stack 0x40000
/usr/sbin/mysqld(my_print_stacktrace+0x35)[0x8df1f5]
/usr/sbin/mysqld(handle_fatal_signal+0x494)[0x666c34]
/lib64/libpthread.so.0[0x367080f710]
/lib64/libc.so.6(gsignal+0x35)[0x3670032625]
/lib64/libc.so.6(abort+0x175)[0x3670033e05]
/usr/sbin/mysqld[0xa3cbc3]
/usr/sbin/mysqld[0xa41733]
/usr/sbin/mysqld[0x9c83fe]
/usr/sbin/mysqld[0x9cb62b]
/usr/sbin/mysqld[0x9ccbdf]
/usr/sbin/mysqld[0x9d9eba]
/usr/sbin/mysqld[0x9524f0]
/usr/sbin/mysqld(_ZN7handler12ha_write_rowEPh+0x12f)[0x5af36f]
/usr/sbin/mysqld(_ZN12ha_partition9write_rowEPh+0x11c)[0xb2105c]
/usr/sbin/mysqld(_ZN7handler12ha_write_rowEPh+0xc9)[0x5af309]
/usr/sbin/mysqld(_Z12write_recordP3THDP5TABLEP9COPY_INFOS4_+0x2b8)[0x6c7b58]
/usr/sbin/mysqld(_Z12mysql_insertP3THDP10TABLE_LISTR4ListI4ItemERS3_IS5_ES6_S6_15enum_duplicatesb+0xb70)[0x6cefa0]
/usr/sbin/mysqld(_Z21mysql_execute_commandP3THD+0x1d2e)[0x6e43ee]
/usr/sbin/mysqld(_Z11mysql_parseP3THDPcjP12Parser_state+0x3c0)[0x6e7840]
/usr/sbin/mysqld(_ZN15Query_log_event14do_apply_eventEPK14Relay_log_infoPKcj+0x7c3)[0x880023]
/usr/sbin/mysqld(_ZN9Log_event11apply_eventEP14Relay_log_info+0x74)[0x882bf4]
/usr/sbin/mysqld(_Z26apply_event_and_update_posPP9Log_eventP3THDP14Relay_log_info+0x263)[0x8ad1e3]
/usr/sbin/mysqld[0x8b2b32]
/usr/sbin/mysqld(handle_slave_sql+0xb0b)[0x8b460b]
/usr/sbin/mysqld(pfs_spawn_thread+0x12a)[0xb06c9a]
/lib64/libpthread.so.0[0x36708079d1]
/lib64/libc.so.6(clone+0x6d)[0x36700e88fd]

Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (7f299c016474): INSERT INTO `tab1` ( ...
...
Connection ID (thread ID): 160738
Status: NOT_KILLED
---

I checked table status.
# mysqlcheck -uroot -p -c -v db1
...
db1.tab1
error    : Partition p201607 returned error
Warning  : InnoDB: Index 'idx1' contains 11641589 entries, should be 11641598.
error    : Corrupt
...

A index ofidx db1.table1 corrupted.

mysql version is 5.6.25.
Can I use mysql lastes version, to avoid this bug?

How to repeat:
n/a

Suggested fix:
n/a
[3 Aug 2016 5:54] MySQL Verification Team
Please do not submit the same bug more than once. An existing bug report Bug #81349 already describes this very problem. Even if you feel that your issue is somewhat different, the resolution is likely to be the same. Because of this, we hope you add your comments to the original bug instead.

Thank you for your interest in MySQL.
[2 Sep 2016 9:36] Sveta Smirnova
Bug #81349 is not visible for everyone, except Oracle employees and original bug reporter.