Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Cannot Reproduce
-
10.4(EOL)
-
None
Description
This one has been filed as MDEV-18218
10.4 ASAN 2465d3e00b |
2019-01-05 22:45:13 3 [ERROR] InnoDB: Submit a detailed bug report to https://jira.mariadb.org/
|
mysqld: /data/src/10.4/storage/innobase/btr/btr0btr.cc:1668: bool btr_page_reorganize_low(bool, ulint, page_cur_t*, dict_index_t*, mtr_t*): Assertion `0' failed.
|
190105 22:45:13 [ERROR] mysqld got signal 6 ;
|
This could be because you hit a bug. It is also possible that this binary
|
or one of the libraries it was linked against is corrupt, improperly built,
|
or misconfigured. This error can also be caused by malfunctioning hardware.
|
|
To report this bug, see https://mariadb.com/kb/en/reporting-bugs
|
|
We will try our best to scrape up some info that will hopefully help
|
diagnose the problem, but since we have already crashed,
|
something is definitely wrong and this may fail.
|
|
Server version: 10.4.2-MariaDB-debug-log
|
key_buffer_size=134217728
|
read_buffer_size=131072
|
max_used_connections=9
|
max_threads=153
|
thread_count=15
|
It is possible that mysqld could use up to
|
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 467560 K bytes of memory
|
Hope that's ok; if not, decrease some variables in the equation.
|
|
Thread pointer: 0x62b000007270
|
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 = 0x7fe4451ace00 thread_stack 0x49000
|
/usr/lib/x86_64-linux-gnu/libasan.so.1(backtrace+0x3a)[0x7fe473c5148a]
|
/data/bld/10.4-asan/bin/mysqld(my_print_stacktrace+0xb3)[0x557fdb09ab5d]
|
/data/bld/10.4-asan/bin/mysqld(handle_fatal_signal+0x8e3)[0x557fd9f768e1]
|
/lib/x86_64-linux-gnu/libpthread.so.0(+0x110c0)[0x7fe473a1a0c0]
|
linux/raise.c:51(__GI_raise)[0x7fe471f5bfcf]
|
stdlib/abort.c:91(__GI_abort)[0x7fe471f5d3fa]
|
assert/assert.c:92(__assert_fail_base)[0x7fe471f54e37]
|
/lib/x86_64-linux-gnu/libc.so.6(+0x2bee2)[0x7fe471f54ee2]
|
btr/btr0btr.cc:1670(btr_page_reorganize_low(bool, unsigned long, page_cur_t*, dict_index_t*, mtr_t*))[0x557fdab82ce8]
|
btr/btr0btr.cc:1797(btr_page_reorganize_block(bool, unsigned long, buf_block_t*, dict_index_t*, mtr_t*))[0x557fdab83c59]
|
btr/btr0btr.cc:5628(btr_can_merge_with_page(btr_cur_t*, unsigned long, buf_block_t**, mtr_t*))[0x557fdab95b24]
|
btr/btr0btr.cc:3843(btr_compress(btr_cur_t*, unsigned long, mtr_t*))[0x557fdab8da60]
|
btr/btr0cur.cc:5634(btr_cur_compress_if_useful(btr_cur_t*, unsigned long, mtr_t*))[0x557fdabcf806]
|
btr/btr0cur.cc:6066(btr_cur_pessimistic_delete(dberr_t*, unsigned long, btr_cur_t*, unsigned long, bool, mtr_t*))[0x557fdabd1a1d]
|
row/row0purge.cc:177(row_purge_remove_clust_if_poss_low(purge_node_t*, unsigned long))[0x557fdaa45f85]
|
row/row0purge.cc:226(row_purge_remove_clust_if_poss(purge_node_t*))[0x557fdaa46240]
|
row/row0purge.cc:810(row_purge_del_mark(purge_node_t*))[0x557fdaa48388]
|
row/row0purge.cc:1194(row_purge_record_func(purge_node_t*, unsigned char*, que_thr_t const*, bool))[0x557fdaa4ad98]
|
row/row0purge.cc:1261(row_purge(purge_node_t*, unsigned char*, que_thr_t*))[0x557fdaa4b455]
|
row/row0purge.cc:1349(row_purge_step(que_thr_t*))[0x557fdaa4bc40]
|
que/que0que.cc:1042(que_thr_step(que_thr_t*))[0x557fda95f445]
|
que/que0que.cc:1104(que_run_threads_low(que_thr_t*))[0x557fda95f868]
|
que/que0que.cc:1146(que_run_threads(que_thr_t*))[0x557fda95fbbf]
|
srv/srv0srv.cc:2448(srv_task_execute())[0x557fdaabf93f]
|
srv/srv0srv.cc:2496(srv_worker_thread)[0x557fdaabfb79]
|
nptl/pthread_create.c:333(start_thread)[0x7fe473a10494]
|
x86_64/clone.S:99(clone)[0x7fe47201193f]
|
|
Trying to get some variables.
|
Some pointers may be invalid and cause the dump to abort.
|
Query (0x0):
|
Connection ID (thread ID): 3
|
Status: NOT_KILLED
|
2019-01-06 3:34:46 1 [ERROR] InnoDB: Summed data size 10989, returned by func 11409
|
2019-01-06 3:34:46 1 [ERROR] InnoDB: Apparent corruption in space 149 page 7 index `PRIMARY`
|
2019-01-06 3:34:46 1 [ERROR] InnoDB: Summed data size 10989, returned by func 11409
|
2019-01-06 3:34:46 1 [ERROR] InnoDB: Apparent corruption in space 149 page 7 index `PRIMARY`
|
mysqld: /data/src/10.4/storage/innobase/btr/btr0btr.cc:3874: ulint btr_compress(btr_cur_t*, ulint, mtr_t*): Assertion `page_validate(merge_page, index)' failed.
|
190106 3:34:46 [ERROR] mysqld got signal 6 ;
|
This could be because you hit a bug. It is also possible that this binary
|
or one of the libraries it was linked against is corrupt, improperly built,
|
or misconfigured. This error can also be caused by malfunctioning hardware.
|
|
To report this bug, see https://mariadb.com/kb/en/reporting-bugs
|
|
We will try our best to scrape up some info that will hopefully help
|
diagnose the problem, but since we have already crashed,
|
something is definitely wrong and this may fail.
|
|
Server version: 10.4.2-MariaDB-debug-log
|
key_buffer_size=134217728
|
read_buffer_size=131072
|
max_used_connections=1
|
max_threads=153
|
thread_count=7
|
It is possible that mysqld could use up to
|
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 467560 K bytes of memory
|
Hope that's ok; if not, decrease some variables in the equation.
|
|
Thread pointer: 0x62b000000270
|
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 = 0x7f8d6598fe00 thread_stack 0x49000
|
/usr/lib/x86_64-linux-gnu/libasan.so.1(backtrace+0x3a)[0x7f8d9392d48a]
|
mysys/stacktrace.c:269(my_print_stacktrace)[0x55f32f866b5d]
|
sql/signal_handler.cc:168(handle_fatal_signal)[0x55f32e7428e1]
|
/lib/x86_64-linux-gnu/libpthread.so.0(+0x110c0)[0x7f8d936f60c0]
|
linux/raise.c:51(__GI_raise)[0x7f8d91c37fcf]
|
stdlib/abort.c:91(__GI_abort)[0x7f8d91c393fa]
|
assert/assert.c:92(__assert_fail_base)[0x7f8d91c30e37]
|
/lib/x86_64-linux-gnu/libc.so.6(+0x2bee2)[0x7f8d91c30ee2]
|
btr/btr0btr.cc:3876(btr_compress(btr_cur_t*, unsigned long, mtr_t*))[0x55f32f359bd7]
|
btr/btr0cur.cc:5634(btr_cur_compress_if_useful(btr_cur_t*, unsigned long, mtr_t*))[0x55f32f39b806]
|
btr/btr0cur.cc:6066(btr_cur_pessimistic_delete(dberr_t*, unsigned long, btr_cur_t*, unsigned long, bool, mtr_t*))[0x55f32f39da1d]
|
row/row0purge.cc:177(row_purge_remove_clust_if_poss_low(purge_node_t*, unsigned long))[0x55f32f211f85]
|
row/row0purge.cc:226(row_purge_remove_clust_if_poss(purge_node_t*))[0x55f32f212240]
|
row/row0purge.cc:810(row_purge_del_mark(purge_node_t*))[0x55f32f214388]
|
row/row0purge.cc:1194(row_purge_record_func(purge_node_t*, unsigned char*, que_thr_t const*, bool))[0x55f32f216d98]
|
row/row0purge.cc:1261(row_purge(purge_node_t*, unsigned char*, que_thr_t*))[0x55f32f217455]
|
row/row0purge.cc:1349(row_purge_step(que_thr_t*))[0x55f32f217c40]
|
que/que0que.cc:1042(que_thr_step(que_thr_t*))[0x55f32f12b445]
|
que/que0que.cc:1104(que_run_threads_low(que_thr_t*))[0x55f32f12b868]
|
que/que0que.cc:1146(que_run_threads(que_thr_t*))[0x55f32f12bbbf]
|
srv/srv0srv.cc:2448(srv_task_execute())[0x55f32f28b93f]
|
srv/srv0srv.cc:2496(srv_worker_thread)[0x55f32f28bb79]
|
nptl/pthread_create.c:333(start_thread)[0x7f8d936ec494]
|
x86_64/clone.S:99(clone)[0x7f8d91ced93f]
|
|
Trying to get some variables.
|
Some pointers may be invalid and cause the dump to abort.
|
Query (0x0):
|
Connection ID (thread ID): 1
|
Status: NOT_KILLED
|
|
Optimizer switch: index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=off,mrr_cost_based=off,mrr_sort_keys=off,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=off,table_elimination=on,extended_keys=on,exists_to_in=on,orderby_uses_equalities=on,condition_pushdown_for_derived=on,split_materialized=on,condition_pushdown_for_subquery=on
|
mysqld: /data/src/10.4/storage/innobase/btr/btr0cur.cc:8044: void btr_free_externally_stored_field(dict_index_t*, byte*, const rec_t*, const ulint*, page_zip_des_t*, ulint, bool, mtr_t*): Assertion `!(mach_read_from_4(field_ref + 12U) & ~((128U | 64U) << 24))' failed.
|
190105 22:48:34 [ERROR] mysqld got signal 6 ;
|
This could be because you hit a bug. It is also possible that this binary
|
or one of the libraries it was linked against is corrupt, improperly built,
|
or misconfigured. This error can also be caused by malfunctioning hardware.
|
|
To report this bug, see https://mariadb.com/kb/en/reporting-bugs
|
|
We will try our best to scrape up some info that will hopefully help
|
diagnose the problem, but since we have already crashed,
|
something is definitely wrong and this may fail.
|
|
Server version: 10.4.2-MariaDB-debug-log
|
key_buffer_size=134217728
|
read_buffer_size=131072
|
max_used_connections=9
|
max_threads=153
|
thread_count=15
|
It is possible that mysqld could use up to
|
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 467560 K bytes of memory
|
Hope that's ok; if not, decrease some variables in the equation.
|
|
Thread pointer: 0x62b00001c270
|
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 = 0x7f8cc5bede00 thread_stack 0x49000
|
/usr/lib/x86_64-linux-gnu/libasan.so.1(backtrace+0x3a)[0x7f8cf519948a]
|
mysys/stacktrace.c:269(my_print_stacktrace)[0x55775ae6eb5d]
|
sql/signal_handler.cc:168(handle_fatal_signal)[0x557759d4a8e1]
|
/lib/x86_64-linux-gnu/libpthread.so.0(+0x110c0)[0x7f8cf4f620c0]
|
linux/raise.c:51(__GI_raise)[0x7f8cf34a3fcf]
|
stdlib/abort.c:91(__GI_abort)[0x7f8cf34a53fa]
|
assert/assert.c:92(__assert_fail_base)[0x7f8cf349ce37]
|
/lib/x86_64-linux-gnu/libc.so.6(+0x2bee2)[0x7f8cf349cee2]
|
btr/btr0cur.cc:8045(btr_free_externally_stored_field(dict_index_t*, unsigned char*, unsigned char const*, unsigned long const*, page_zip_des_t*, unsigned long, bool, mtr_t*))[0x55775a9ac890]
|
btr/btr0cur.cc:8207(btr_rec_free_externally_stored_fields(dict_index_t*, unsigned char*, unsigned long const*, page_zip_des_t*, bool, mtr_t*))[0x55775a9ad4d2]
|
btr/btr0cur.cc:5899(btr_cur_pessimistic_delete(dberr_t*, unsigned long, btr_cur_t*, unsigned long, bool, mtr_t*))[0x55775a9a4ffb]
|
row/row0purge.cc:177(row_purge_remove_clust_if_poss_low(purge_node_t*, unsigned long))[0x55775a819f85]
|
row/row0purge.cc:226(row_purge_remove_clust_if_poss(purge_node_t*))[0x55775a81a240]
|
row/row0purge.cc:810(row_purge_del_mark(purge_node_t*))[0x55775a81c388]
|
row/row0purge.cc:1194(row_purge_record_func(purge_node_t*, unsigned char*, que_thr_t const*, bool))[0x55775a81ed98]
|
row/row0purge.cc:1261(row_purge(purge_node_t*, unsigned char*, que_thr_t*))[0x55775a81f455]
|
row/row0purge.cc:1349(row_purge_step(que_thr_t*))[0x55775a81fc40]
|
que/que0que.cc:1042(que_thr_step(que_thr_t*))[0x55775a733445]
|
que/que0que.cc:1104(que_run_threads_low(que_thr_t*))[0x55775a733868]
|
que/que0que.cc:1146(que_run_threads(que_thr_t*))[0x55775a733bbf]
|
srv/srv0srv.cc:2448(srv_task_execute())[0x55775a89393f]
|
srv/srv0srv.cc:2496(srv_worker_thread)[0x55775a893b79]
|
nptl/pthread_create.c:333(start_thread)[0x7f8cf4f58494]
|
x86_64/clone.S:99(clone)[0x7f8cf355993f]
|
|
Trying to get some variables.
|
Some pointers may be invalid and cause the dump to abort.
|
Query (0x0):
|
Connection ID (thread ID): 4
|
Status: NOT_KILLED
|
|
Optimizer switch: index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=off,mrr_cost_based=off,mrr_sort_keys=off,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=off,table_elimination=on,extended_keys=on,exists_to_in=on,orderby_uses_equalities=on,condition_pushdown_for_derived=on,split_materialized=on,condition_pushdown_for_subquery=on
|
Got them by running the attached test case len1.test and/or its derivatives len2.test len3.test len4.test len5.test len6.test with
--mem --default-server-options --mysqld=--log_output=FILE --mysqld=--max-statement-time=30 --mysqld=--lock-wait-timeout=10 --mysqld=--loose-innodb-lock-wait-timeout=5 --mysqld=--loose-debug_assert_on_not_freed_memory=0 --repeat=500
|
Extremly non-deterministic.