Details
-
Bug
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
11.8, 12.3, 13.1
-
None
Description
The test case is non-deterministic. It already includes the loop, so there should be no need to run it with repeat, but you might need to adjust the number of connections and/or iterations within the test.
Not for the test suite, for reproducing only!
--source include/have_sequence.inc
|
|
|
--let $conns= 16
|
--let $iters= 3000
|
|
|
--let $restart_parameters= --table-open-cache=10
|
--source include/restart_mysqld.inc
|
|
|
CREATE TABLE t1 ( |
id INT AUTO_INCREMENT PRIMARY KEY, |
v VECTOR(5) NOT NULL, VECTOR(v) |
) ENGINE=MyISAM;
|
INSERT INTO t1 (v) SELECT |
VEC_FROMTEXT(CONCAT('[',seq,',',seq,',',seq,',',seq,',',seq,']')) |
FROM seq_1_to_500; |
|
|
DELIMITER $$;
|
CREATE PROCEDURE p(n INT) |
BEGIN
|
DECLARE i INT DEFAULT 0; |
DECLARE x INT; |
WHILE i < n DO
|
SELECT id INTO x FROM t1 |
ORDER BY VEC_DISTANCE_EUCLIDEAN(v, VEC_FROMTEXT('[0.1,0.2,0.3,0.4,0.5]')) |
LIMIT 1;
|
SET i= i + 1; |
END WHILE; |
END $$ |
DELIMITER ;$$
|
|
|
--let $i= $conns
|
while ($i)
|
{
|
--connect (con$i,localhost,root,,test) |
--send_eval CALL p($iters) |
--dec $i |
}
|
--let $i= $conns
|
while ($i)
|
{
|
--connection con$i |
--reap |
--disconnect con$i |
--dec $i |
}
|
--connection default
|
|
|
DROP PROCEDURE p; |
DROP TABLE t1; |
|
11.8 14362356d14b80242d60dceb9b34f988bbcc9945 |
==121193==ERROR: AddressSanitizer: heap-use-after-free on address 0x61f000060578 at pc 0x55751d661823 bp 0x7f1d37838e80 sp 0x7f1d37838e78
|
READ of size 8 at 0x61f000060578 thread T11
|
#0 0x55751d661822 in list_add /data/bld/11.8-asan-ubsan/mysys/list.c:33
|
#1 0x55751d58e5f3 in mi_lock_database /data/bld/11.8-asan-ubsan/storage/myisam/mi_locking.c:50
|
#2 0x55751d4fa526 in ha_myisam::external_lock(THD*, int) /data/bld/11.8-asan-ubsan/storage/myisam/ha_myisam.cc:2215
|
#3 0x55751b532026 in handler::ha_external_lock(THD*, int) /data/bld/11.8-asan-ubsan/sql/handler.cc:7865
|
#4 0x557519d502c3 in TABLE::hlindex_lock(unsigned int) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:10129
|
#5 0x557519d560f5 in TABLE::hlindex_read_first(unsigned int, Item*, unsigned long long) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:10213
|
#6 0x55751a3c5169 in join_read_first /data/bld/11.8-asan-ubsan/sql/sql_select.cc:25752
|
#7 0x55751a2dbe70 in sub_select(JOIN*, st_join_table*, bool) /data/bld/11.8-asan-ubsan/sql/sql_select.cc:24630
|
#8 0x55751a379818 in do_select /data/bld/11.8-asan-ubsan/sql/sql_select.cc:24144
|
#9 0x55751a44d5cc in JOIN::exec_inner() /data/bld/11.8-asan-ubsan/sql/sql_select.cc:5112
|
#10 0x55751a44db70 in JOIN::exec() /data/bld/11.8-asan-ubsan/sql/sql_select.cc:4900
|
#11 0x55751a44454f in mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) /data/bld/11.8-asan-ubsan/sql/sql_select.cc:5426
|
#12 0x55751a445697 in handle_select(THD*, LEX*, select_result*, unsigned long long) /data/bld/11.8-asan-ubsan/sql/sql_select.cc:634
|
#13 0x55751a0c1329 in execute_sqlcom_select /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:6219
|
#14 0x55751a102010 in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:4006
|
#15 0x55751ad6ebc9 in sp_instr_stmt::exec_core(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1194
|
#16 0x55751ad84292 in sp_lex_keeper::reset_lex_and_exec_core(THD*, unsigned int*, bool, sp_instr*, bool) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:350
|
#17 0x55751ad9186b in sp_lex_keeper::validate_lex_and_exec_core(THD*, unsigned int*, bool, sp_lex_instr*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:529
|
#18 0x55751ad946c1 in sp_instr_stmt::execute(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1096
|
#19 0x557519c0195b in sp_head::execute(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:1330
|
#20 0x557519c0ac4f in sp_head::execute_procedure(THD*, List<Item>*) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:2356
|
#21 0x55751a0bdac3 in do_execute_sp /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3096
|
#22 0x55751a0d648d in Sql_cmd_call::execute(THD*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3337
|
#23 0x55751a11b54b in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:5911
|
#24 0x55751a120058 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:7938
|
#25 0x55751a12936a in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1923
|
#26 0x55751a135956 in do_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1431
|
#27 0x55751a9868d1 in do_handle_one_connection(CONNECT*, bool) /data/bld/11.8-asan-ubsan/sql/sql_connect.cc:1515
|
#28 0x55751a987a3a in handle_one_connection /data/bld/11.8-asan-ubsan/sql/sql_connect.cc:1427
|
#29 0x55751c421309 in pfs_spawn_thread /data/bld/11.8-asan-ubsan/storage/perfschema/pfs.cc:2198
|
#30 0x7f1d486a71f4 in start_thread nptl/pthread_create.c:442
|
#31 0x7f1d487278eb in clone3 ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
|
|
|
0x61f000060578 is located 248 bytes inside of 3432-byte region [0x61f000060480,0x61f0000611e8)
|
freed by thread T9 here:
|
#0 0x7f1d490b76a8 in __interceptor_free ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:52
|
#1 0x55751d6cc1ea in my_free /data/bld/11.8-asan-ubsan/mysys/my_malloc.c:218
|
#2 0x55751d5540c3 in mi_close /data/bld/11.8-asan-ubsan/storage/myisam/mi_close.c:130
|
#3 0x55751d4f5ef7 in ha_myisam::close() /data/bld/11.8-asan-ubsan/storage/myisam/ha_myisam.cc:949
|
#4 0x55751b4f359f in handler::ha_close() /data/bld/11.8-asan-ubsan/sql/handler.cc:3867
|
#5 0x55751a7b59cf in closefrm(TABLE*) /data/bld/11.8-asan-ubsan/sql/table.cc:4966
|
#6 0x55751a7b58b1 in closefrm(TABLE*) /data/bld/11.8-asan-ubsan/sql/table.cc:4963
|
#7 0x55751afcf30d in intern_close_table /data/bld/11.8-asan-ubsan/sql/table_cache.cc:230
|
#8 0x55751afcf6d9 in tc_remove_table /data/bld/11.8-asan-ubsan/sql/table_cache.cc:268
|
#9 0x55751afd024d in tc_release_table(TABLE*) /data/bld/11.8-asan-ubsan/sql/table_cache.cc:461
|
#10 0x557519d3673e in close_thread_table(THD*, TABLE**) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:1077
|
#11 0x557519d38225 in close_thread_tables(THD*) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:1008
|
#12 0x557519d38566 in close_thread_tables_for_query(THD*) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:820
|
#13 0x55751a11c89b in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:6001
|
#14 0x55751ad6ebc9 in sp_instr_stmt::exec_core(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1194
|
#15 0x55751ad84292 in sp_lex_keeper::reset_lex_and_exec_core(THD*, unsigned int*, bool, sp_instr*, bool) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:350
|
#16 0x55751ad9186b in sp_lex_keeper::validate_lex_and_exec_core(THD*, unsigned int*, bool, sp_lex_instr*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:529
|
#17 0x55751ad946c1 in sp_instr_stmt::execute(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1096
|
#18 0x557519c0195b in sp_head::execute(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:1330
|
#19 0x557519c0ac4f in sp_head::execute_procedure(THD*, List<Item>*) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:2356
|
#20 0x55751a0bdac3 in do_execute_sp /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3096
|
#21 0x55751a0d648d in Sql_cmd_call::execute(THD*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3337
|
#22 0x55751a11b54b in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:5911
|
#23 0x55751a120058 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:7938
|
#24 0x55751a12936a in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1923
|
#25 0x55751a135956 in do_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1431
|
#26 0x55751a9868d1 in do_handle_one_connection(CONNECT*, bool) /data/bld/11.8-asan-ubsan/sql/sql_connect.cc:1515
|
#27 0x55751a987a3a in handle_one_connection /data/bld/11.8-asan-ubsan/sql/sql_connect.cc:1427
|
#28 0x55751c421309 in pfs_spawn_thread /data/bld/11.8-asan-ubsan/storage/perfschema/pfs.cc:2198
|
#29 0x7f1d486a71f4 in start_thread nptl/pthread_create.c:442
|
|
|
previously allocated by thread T9 here:
|
#0 0x7f1d490b89cf in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:69
|
#1 0x55751d6cba90 in my_malloc /data/bld/11.8-asan-ubsan/mysys/my_malloc.c:93
|
#2 0x55751d69e29b in my_multi_malloc /data/bld/11.8-asan-ubsan/mysys/mulalloc.c:59
|
#3 0x55751d5a5c07 in mi_open /data/bld/11.8-asan-ubsan/storage/myisam/mi_open.c:621
|
#4 0x55751d50f069 in ha_myisam::open(char const*, int, unsigned int) /data/bld/11.8-asan-ubsan/storage/myisam/ha_myisam.cc:813
|
#5 0x55751b4f48c7 in handler::ha_open(TABLE*, char const*, int, unsigned int, st_mem_root*, List<String>*) /data/bld/11.8-asan-ubsan/sql/handler.cc:3783
|
#6 0x55751a8187a8 in open_table_from_share(THD*, TABLE_SHARE*, st_mysql_const_lex_string const*, unsigned int, unsigned int, unsigned int, TABLE*, bool, List<String>*) /data/bld/11.8-asan-ubsan/sql/table.cc:4777
|
#7 0x557519d4f3da in TABLE::hlindex_open(unsigned int) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:10107
|
#8 0x557519d560e2 in TABLE::hlindex_read_first(unsigned int, Item*, unsigned long long) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:10213
|
#9 0x55751a3c5169 in join_read_first /data/bld/11.8-asan-ubsan/sql/sql_select.cc:25752
|
#10 0x55751a2dbe70 in sub_select(JOIN*, st_join_table*, bool) /data/bld/11.8-asan-ubsan/sql/sql_select.cc:24630
|
#11 0x55751a379818 in do_select /data/bld/11.8-asan-ubsan/sql/sql_select.cc:24144
|
#12 0x55751a44d5cc in JOIN::exec_inner() /data/bld/11.8-asan-ubsan/sql/sql_select.cc:5112
|
#13 0x55751a44db70 in JOIN::exec() /data/bld/11.8-asan-ubsan/sql/sql_select.cc:4900
|
#14 0x55751a44454f in mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) /data/bld/11.8-asan-ubsan/sql/sql_select.cc:5426
|
#15 0x55751a445697 in handle_select(THD*, LEX*, select_result*, unsigned long long) /data/bld/11.8-asan-ubsan/sql/sql_select.cc:634
|
#16 0x55751a0c1329 in execute_sqlcom_select /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:6219
|
#17 0x55751a102010 in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:4006
|
#18 0x55751ad6ebc9 in sp_instr_stmt::exec_core(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1194
|
#19 0x55751ad84292 in sp_lex_keeper::reset_lex_and_exec_core(THD*, unsigned int*, bool, sp_instr*, bool) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:350
|
#20 0x55751ad9186b in sp_lex_keeper::validate_lex_and_exec_core(THD*, unsigned int*, bool, sp_lex_instr*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:529
|
#21 0x55751ad946c1 in sp_instr_stmt::execute(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1096
|
#22 0x557519c0195b in sp_head::execute(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:1330
|
#23 0x557519c0ac4f in sp_head::execute_procedure(THD*, List<Item>*) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:2356
|
#24 0x55751a0bdac3 in do_execute_sp /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3096
|
#25 0x55751a0d648d in Sql_cmd_call::execute(THD*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3337
|
#26 0x55751a11b54b in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:5911
|
#27 0x55751a120058 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:7938
|
#28 0x55751a12936a in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1923
|
#29 0x55751a135956 in do_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1431
|
|
|
Thread T11 created by T0 here:
|
#0 0x7f1d49049726 in __interceptor_pthread_create ../../../../src/libsanitizer/asan/asan_interceptors.cpp:207
|
#1 0x55751c41d2c5 in my_thread_create /data/bld/11.8-asan-ubsan/storage/perfschema/my_thread.h:38
|
#2 0x55751c421786 in pfs_spawn_thread_v1 /data/bld/11.8-asan-ubsan/storage/perfschema/pfs.cc:2249
|
#3 0x557519964d16 in inline_mysql_thread_create /data/bld/11.8-asan-ubsan/include/mysql/psi/mysql_thread.h:1139
|
#4 0x557519964d16 in create_thread_to_handle_connection(CONNECT*) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6421
|
#5 0x557519978b3f in create_new_thread(CONNECT*) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6483
|
#6 0x557519978d67 in handle_accepted_socket(st_mysql_socket, st_mysql_socket) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6545
|
#7 0x5575199799b9 in handle_connections_sockets() /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6657
|
#8 0x557519979e6a in run_main_loop /data/bld/11.8-asan-ubsan/sql/mysqld.cc:5895
|
#9 0x55751997b44a in mysqld_main(int, char**) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6317
|
#10 0x55751994ada1 in main /data/bld/11.8-asan-ubsan/sql/main.cc:34
|
#11 0x7f1d48645249 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
|
|
|
Thread T9 created by T0 here:
|
#0 0x7f1d49049726 in __interceptor_pthread_create ../../../../src/libsanitizer/asan/asan_interceptors.cpp:207
|
#1 0x55751c41d2c5 in my_thread_create /data/bld/11.8-asan-ubsan/storage/perfschema/my_thread.h:38
|
#2 0x55751c421786 in pfs_spawn_thread_v1 /data/bld/11.8-asan-ubsan/storage/perfschema/pfs.cc:2249
|
#3 0x557519964d16 in inline_mysql_thread_create /data/bld/11.8-asan-ubsan/include/mysql/psi/mysql_thread.h:1139
|
#4 0x557519964d16 in create_thread_to_handle_connection(CONNECT*) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6421
|
#5 0x557519978b3f in create_new_thread(CONNECT*) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6483
|
#6 0x557519978d67 in handle_accepted_socket(st_mysql_socket, st_mysql_socket) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6545
|
#7 0x5575199799b9 in handle_connections_sockets() /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6657
|
#8 0x557519979e6a in run_main_loop /data/bld/11.8-asan-ubsan/sql/mysqld.cc:5895
|
#9 0x55751997b44a in mysqld_main(int, char**) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6317
|
#10 0x55751994ada1 in main /data/bld/11.8-asan-ubsan/sql/main.cc:34
|
#11 0x7f1d48645249 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
|
|
|
SUMMARY: AddressSanitizer: heap-use-after-free /data/bld/11.8-asan-ubsan/mysys/list.c:33 in list_add
|
Shadow bytes around the buggy address:
|
0x0c3e80004050: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e80004060: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e80004070: fd fd fa fa fa fa fa fa fa fa fa fa fa fa fa fa
|
0x0c3e80004080: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
|
0x0c3e80004090: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
=>0x0c3e800040a0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd[fd]
|
0x0c3e800040b0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e800040c0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e800040d0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e800040e0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e800040f0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
Shadow byte legend (one shadow byte represents 8 application bytes):
|
Addressable: 00
|
Partially addressable: 01 02 03 04 05 06 07
|
Heap left redzone: fa
|
Freed heap region: fd
|
Stack left redzone: f1
|
Stack mid redzone: f2
|
Stack right redzone: f3
|
Stack after return: f5
|
Stack use after scope: f8
|
Global redzone: f9
|
Global init order: f6
|
Poisoned by user: f7
|
Container overflow: fc
|
Array cookie: ac
|
Intra object redzone: bb
|
ASan internal: fe
|
Left alloca redzone: ca
|
Right alloca redzone: cb
|
==121193==ABORTING
|
|
11.8 14362356d14b80242d60dceb9b34f988bbcc9945 |
==120834==ERROR: AddressSanitizer: heap-use-after-free on address 0x61f000050978 at pc 0x55a8623c5ae1 bp 0x7f7d258c0aa0 sp 0x7f7d258c0a98
|
WRITE of size 8 at 0x61f000050978 thread T14
|
#0 0x55a8623c5ae0 in list_delete /data/bld/11.8-asan-ubsan/mysys/list.c:52
|
#1 0x55a8622f29a3 in mi_lock_database /data/bld/11.8-asan-ubsan/storage/myisam/mi_locking.c:147
|
#2 0x55a86225e526 in ha_myisam::external_lock(THD*, int) /data/bld/11.8-asan-ubsan/storage/myisam/ha_myisam.cc:2215
|
#3 0x55a860296026 in handler::ha_external_lock(THD*, int) /data/bld/11.8-asan-ubsan/sql/handler.cc:7865
|
#4 0x55a85eab53a0 in handler::ha_external_unlock(THD*) /data/bld/11.8-asan-ubsan/sql/handler.h:3602
|
#5 0x55a85eab53a0 in TABLE::unlock_hlindexes() /data/bld/11.8-asan-ubsan/sql/sql_base.cc:10159
|
#6 0x55a860295d55 in handler::ha_external_lock(THD*, int) /data/bld/11.8-asan-ubsan/sql/handler.cc:7859
|
#7 0x55a860b678ff in handler::ha_external_unlock(THD*) /data/bld/11.8-asan-ubsan/sql/handler.h:3602
|
#8 0x55a860b678ff in unlock_external /data/bld/11.8-asan-ubsan/sql/lock.cc:745
|
#9 0x55a860b6a945 in mysql_unlock_tables(THD*, st_mysql_lock*, bool) /data/bld/11.8-asan-ubsan/sql/lock.cc:436
|
#10 0x55a860b6bb38 in mysql_unlock_tables(THD*, st_mysql_lock*) /data/bld/11.8-asan-ubsan/sql/lock.cc:419
|
#11 0x55a85ea9bbd9 in close_thread_tables(THD*) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:999
|
#12 0x55a85ea9c566 in close_thread_tables_for_query(THD*) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:820
|
#13 0x55a85ee8089b in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:6001
|
#14 0x55a85fad2bc9 in sp_instr_stmt::exec_core(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1194
|
#15 0x55a85fae8292 in sp_lex_keeper::reset_lex_and_exec_core(THD*, unsigned int*, bool, sp_instr*, bool) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:350
|
#16 0x55a85faf586b in sp_lex_keeper::validate_lex_and_exec_core(THD*, unsigned int*, bool, sp_lex_instr*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:529
|
#17 0x55a85faf86c1 in sp_instr_stmt::execute(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1096
|
#18 0x55a85e96595b in sp_head::execute(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:1330
|
#19 0x55a85e96ec4f in sp_head::execute_procedure(THD*, List<Item>*) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:2356
|
#20 0x55a85ee21ac3 in do_execute_sp /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3096
|
#21 0x55a85ee3a48d in Sql_cmd_call::execute(THD*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3337
|
#22 0x55a85ee7f54b in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:5911
|
#23 0x55a85ee84058 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:7938
|
#24 0x55a85ee8d36a in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1923
|
#25 0x55a85ee99956 in do_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1431
|
#26 0x55a85f6ea8d1 in do_handle_one_connection(CONNECT*, bool) /data/bld/11.8-asan-ubsan/sql/sql_connect.cc:1515
|
#27 0x55a85f6eba3a in handle_one_connection /data/bld/11.8-asan-ubsan/sql/sql_connect.cc:1427
|
#28 0x55a861185309 in pfs_spawn_thread /data/bld/11.8-asan-ubsan/storage/perfschema/pfs.cc:2198
|
#29 0x7f7d37ca71f4 in start_thread nptl/pthread_create.c:442
|
#30 0x7f7d37d278eb in clone3 ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
|
|
|
0x61f000050978 is located 248 bytes inside of 3432-byte region [0x61f000050880,0x61f0000515e8)
|
freed by thread T8 here:
|
#0 0x7f7d390b76a8 in __interceptor_free ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:52
|
#1 0x55a8624301ea in my_free /data/bld/11.8-asan-ubsan/mysys/my_malloc.c:218
|
#2 0x55a8622b80c3 in mi_close /data/bld/11.8-asan-ubsan/storage/myisam/mi_close.c:130
|
#3 0x55a862259ef7 in ha_myisam::close() /data/bld/11.8-asan-ubsan/storage/myisam/ha_myisam.cc:949
|
#4 0x55a86025759f in handler::ha_close() /data/bld/11.8-asan-ubsan/sql/handler.cc:3867
|
#5 0x55a85f5199cf in closefrm(TABLE*) /data/bld/11.8-asan-ubsan/sql/table.cc:4966
|
#6 0x55a85f5198b1 in closefrm(TABLE*) /data/bld/11.8-asan-ubsan/sql/table.cc:4963
|
#7 0x55a85fd3330d in intern_close_table /data/bld/11.8-asan-ubsan/sql/table_cache.cc:230
|
#8 0x55a85fd336d9 in tc_remove_table /data/bld/11.8-asan-ubsan/sql/table_cache.cc:268
|
#9 0x55a85fd3424d in tc_release_table(TABLE*) /data/bld/11.8-asan-ubsan/sql/table_cache.cc:461
|
#10 0x55a85ea9a73e in close_thread_table(THD*, TABLE**) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:1077
|
#11 0x55a85ea9c225 in close_thread_tables(THD*) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:1008
|
#12 0x55a85ea9c566 in close_thread_tables_for_query(THD*) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:820
|
#13 0x55a85ee8089b in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:6001
|
#14 0x55a85fad2bc9 in sp_instr_stmt::exec_core(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1194
|
#15 0x55a85fae8292 in sp_lex_keeper::reset_lex_and_exec_core(THD*, unsigned int*, bool, sp_instr*, bool) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:350
|
#16 0x55a85faf586b in sp_lex_keeper::validate_lex_and_exec_core(THD*, unsigned int*, bool, sp_lex_instr*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:529
|
#17 0x55a85faf86c1 in sp_instr_stmt::execute(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1096
|
#18 0x55a85e96595b in sp_head::execute(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:1330
|
#19 0x55a85e96ec4f in sp_head::execute_procedure(THD*, List<Item>*) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:2356
|
#20 0x55a85ee21ac3 in do_execute_sp /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3096
|
#21 0x55a85ee3a48d in Sql_cmd_call::execute(THD*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3337
|
#22 0x55a85ee7f54b in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:5911
|
#23 0x55a85ee84058 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:7938
|
#24 0x55a85ee8d36a in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1923
|
#25 0x55a85ee99956 in do_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1431
|
#26 0x55a85f6ea8d1 in do_handle_one_connection(CONNECT*, bool) /data/bld/11.8-asan-ubsan/sql/sql_connect.cc:1515
|
#27 0x55a85f6eba3a in handle_one_connection /data/bld/11.8-asan-ubsan/sql/sql_connect.cc:1427
|
#28 0x55a861185309 in pfs_spawn_thread /data/bld/11.8-asan-ubsan/storage/perfschema/pfs.cc:2198
|
#29 0x7f7d37ca71f4 in start_thread nptl/pthread_create.c:442
|
|
|
previously allocated by thread T12 here:
|
#0 0x7f7d390b89cf in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:69
|
#1 0x55a86242fa90 in my_malloc /data/bld/11.8-asan-ubsan/mysys/my_malloc.c:93
|
#2 0x55a86240229b in my_multi_malloc /data/bld/11.8-asan-ubsan/mysys/mulalloc.c:59
|
#3 0x55a862309c07 in mi_open /data/bld/11.8-asan-ubsan/storage/myisam/mi_open.c:621
|
#4 0x55a862273069 in ha_myisam::open(char const*, int, unsigned int) /data/bld/11.8-asan-ubsan/storage/myisam/ha_myisam.cc:813
|
#5 0x55a8602588c7 in handler::ha_open(TABLE*, char const*, int, unsigned int, st_mem_root*, List<String>*) /data/bld/11.8-asan-ubsan/sql/handler.cc:3783
|
#6 0x55a85f57c7a8 in open_table_from_share(THD*, TABLE_SHARE*, st_mysql_const_lex_string const*, unsigned int, unsigned int, unsigned int, TABLE*, bool, List<String>*) /data/bld/11.8-asan-ubsan/sql/table.cc:4777
|
#7 0x55a85eab33da in TABLE::hlindex_open(unsigned int) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:10107
|
#8 0x55a85eaba0e2 in TABLE::hlindex_read_first(unsigned int, Item*, unsigned long long) /data/bld/11.8-asan-ubsan/sql/sql_base.cc:10213
|
#9 0x55a85f129169 in join_read_first /data/bld/11.8-asan-ubsan/sql/sql_select.cc:25752
|
#10 0x55a85f03fe70 in sub_select(JOIN*, st_join_table*, bool) /data/bld/11.8-asan-ubsan/sql/sql_select.cc:24630
|
#11 0x55a85f0dd818 in do_select /data/bld/11.8-asan-ubsan/sql/sql_select.cc:24144
|
#12 0x55a85f1b15cc in JOIN::exec_inner() /data/bld/11.8-asan-ubsan/sql/sql_select.cc:5112
|
#13 0x55a85f1b1b70 in JOIN::exec() /data/bld/11.8-asan-ubsan/sql/sql_select.cc:4900
|
#14 0x55a85f1a854f in mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*) /data/bld/11.8-asan-ubsan/sql/sql_select.cc:5426
|
#15 0x55a85f1a9697 in handle_select(THD*, LEX*, select_result*, unsigned long long) /data/bld/11.8-asan-ubsan/sql/sql_select.cc:634
|
#16 0x55a85ee25329 in execute_sqlcom_select /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:6219
|
#17 0x55a85ee66010 in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:4006
|
#18 0x55a85fad2bc9 in sp_instr_stmt::exec_core(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1194
|
#19 0x55a85fae8292 in sp_lex_keeper::reset_lex_and_exec_core(THD*, unsigned int*, bool, sp_instr*, bool) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:350
|
#20 0x55a85faf586b in sp_lex_keeper::validate_lex_and_exec_core(THD*, unsigned int*, bool, sp_lex_instr*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:529
|
#21 0x55a85faf86c1 in sp_instr_stmt::execute(THD*, unsigned int*) /data/bld/11.8-asan-ubsan/sql/sp_instr.cc:1096
|
#22 0x55a85e96595b in sp_head::execute(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:1330
|
#23 0x55a85e96ec4f in sp_head::execute_procedure(THD*, List<Item>*) /data/bld/11.8-asan-ubsan/sql/sp_head.cc:2356
|
#24 0x55a85ee21ac3 in do_execute_sp /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3096
|
#25 0x55a85ee3a48d in Sql_cmd_call::execute(THD*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:3337
|
#26 0x55a85ee7f54b in mysql_execute_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:5911
|
#27 0x55a85ee84058 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:7938
|
#28 0x55a85ee8d36a in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1923
|
#29 0x55a85ee99956 in do_command(THD*, bool) /data/bld/11.8-asan-ubsan/sql/sql_parse.cc:1431
|
|
|
Thread T14 created by T0 here:
|
#0 0x7f7d39049726 in __interceptor_pthread_create ../../../../src/libsanitizer/asan/asan_interceptors.cpp:207
|
#1 0x55a8611812c5 in my_thread_create /data/bld/11.8-asan-ubsan/storage/perfschema/my_thread.h:38
|
#2 0x55a861185786 in pfs_spawn_thread_v1 /data/bld/11.8-asan-ubsan/storage/perfschema/pfs.cc:2249
|
#3 0x55a85e6c8d16 in inline_mysql_thread_create /data/bld/11.8-asan-ubsan/include/mysql/psi/mysql_thread.h:1139
|
#4 0x55a85e6c8d16 in create_thread_to_handle_connection(CONNECT*) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6421
|
#5 0x55a85e6dcb3f in create_new_thread(CONNECT*) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6483
|
#6 0x55a85e6dcd67 in handle_accepted_socket(st_mysql_socket, st_mysql_socket) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6545
|
#7 0x55a85e6dd9b9 in handle_connections_sockets() /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6657
|
#8 0x55a85e6dde6a in run_main_loop /data/bld/11.8-asan-ubsan/sql/mysqld.cc:5895
|
#9 0x55a85e6df44a in mysqld_main(int, char**) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6317
|
#10 0x55a85e6aeda1 in main /data/bld/11.8-asan-ubsan/sql/main.cc:34
|
#11 0x7f7d37c45249 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
|
|
|
Thread T8 created by T0 here:
|
#0 0x7f7d39049726 in __interceptor_pthread_create ../../../../src/libsanitizer/asan/asan_interceptors.cpp:207
|
#1 0x55a8611812c5 in my_thread_create /data/bld/11.8-asan-ubsan/storage/perfschema/my_thread.h:38
|
#2 0x55a861185786 in pfs_spawn_thread_v1 /data/bld/11.8-asan-ubsan/storage/perfschema/pfs.cc:2249
|
#3 0x55a85e6c8d16 in inline_mysql_thread_create /data/bld/11.8-asan-ubsan/include/mysql/psi/mysql_thread.h:1139
|
#4 0x55a85e6c8d16 in create_thread_to_handle_connection(CONNECT*) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6421
|
#5 0x55a85e6dcb3f in create_new_thread(CONNECT*) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6483
|
#6 0x55a85e6dcd67 in handle_accepted_socket(st_mysql_socket, st_mysql_socket) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6545
|
#7 0x55a85e6dd9b9 in handle_connections_sockets() /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6657
|
#8 0x55a85e6dde6a in run_main_loop /data/bld/11.8-asan-ubsan/sql/mysqld.cc:5895
|
#9 0x55a85e6df44a in mysqld_main(int, char**) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6317
|
#10 0x55a85e6aeda1 in main /data/bld/11.8-asan-ubsan/sql/main.cc:34
|
#11 0x7f7d37c45249 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
|
|
|
Thread T12 created by T0 here:
|
#0 0x7f7d39049726 in __interceptor_pthread_create ../../../../src/libsanitizer/asan/asan_interceptors.cpp:207
|
#1 0x55a8611812c5 in my_thread_create /data/bld/11.8-asan-ubsan/storage/perfschema/my_thread.h:38
|
#2 0x55a861185786 in pfs_spawn_thread_v1 /data/bld/11.8-asan-ubsan/storage/perfschema/pfs.cc:2249
|
#3 0x55a85e6c8d16 in inline_mysql_thread_create /data/bld/11.8-asan-ubsan/include/mysql/psi/mysql_thread.h:1139
|
#4 0x55a85e6c8d16 in create_thread_to_handle_connection(CONNECT*) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6421
|
#5 0x55a85e6dcb3f in create_new_thread(CONNECT*) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6483
|
#6 0x55a85e6dcd67 in handle_accepted_socket(st_mysql_socket, st_mysql_socket) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6545
|
#7 0x55a85e6dd9b9 in handle_connections_sockets() /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6657
|
#8 0x55a85e6dde6a in run_main_loop /data/bld/11.8-asan-ubsan/sql/mysqld.cc:5895
|
#9 0x55a85e6df44a in mysqld_main(int, char**) /data/bld/11.8-asan-ubsan/sql/mysqld.cc:6317
|
#10 0x55a85e6aeda1 in main /data/bld/11.8-asan-ubsan/sql/main.cc:34
|
#11 0x7f7d37c45249 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
|
|
|
SUMMARY: AddressSanitizer: heap-use-after-free /data/bld/11.8-asan-ubsan/mysys/list.c:52 in list_delete
|
Shadow bytes around the buggy address:
|
0x0c3e800020d0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e800020e0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e800020f0: fd fd fa fa fa fa fa fa fa fa fa fa fa fa fa fa
|
0x0c3e80002100: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
|
0x0c3e80002110: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
=>0x0c3e80002120: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd[fd]
|
0x0c3e80002130: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e80002140: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e80002150: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e80002160: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c3e80002170: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
Shadow byte legend (one shadow byte represents 8 application bytes):
|
Addressable: 00
|
Partially addressable: 01 02 03 04 05 06 07
|
Heap left redzone: fa
|
Freed heap region: fd
|
Stack left redzone: f1
|
Stack mid redzone: f2
|
Stack right redzone: f3
|
Stack after return: f5
|
Stack use after scope: f8
|
Global redzone: f9
|
Global init order: f6
|
Poisoned by user: f7
|
Container overflow: fc
|
Array cookie: ac
|
Intra object redzone: bb
|
ASan internal: fe
|
Left alloca redzone: ca
|
Right alloca redzone: cb
|
==120834==ABORTING
|
Claude's comment, I have no claims about its validity:
The MyISAM table backing a vector index is opened from a share with
tmp_table=INTERNAL_TMP_TABLE, so ha_myisam locks it with F_EXTRA_LCK, which
does list_add() on MYISAM_SHARE::in_use without intern_lock. But the file is
opened without HA_OPEN_INTERNAL_TABLE, so all connections share one
MYISAM_SHARE. Concurrent searches corrupt share->in_use; a tiny table cache
evicts single TABLE objects (freeing their MI_INFO) while the share survives.