==1477612==ERROR: AddressSanitizer: heap-use-after-free on address 0x62d000276448 at pc 0x1490198e8be7 bp 0x14901ade6440 sp 0x14901ade6430
|
READ of size 8 at 0x62d000276448 thread T12
|
#0 0x1490198e8be6 in ha_spider::update_create_info(HA_CREATE_INFO*) /test/11.6_opt_san/storage/spider/ha_spider.cc:8609
|
#1 0x557142503df0 in ha_partition::update_create_info(HA_CREATE_INFO*) /test/11.6_opt_san/sql/ha_partition.cc:2397
|
#2 0x55714008cc2b in mysql_prepare_alter_table(THD*, TABLE*, Table_specification_st*, Alter_info*, Alter_table_ctx*) /test/11.6_opt_san/sql/sql_table.cc:9194
|
#3 0x5571400bacc7 in mysql_alter_table(THD*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, Table_specification_st*, TABLE_LIST*, Recreate_info*, Alter_info*, unsigned int, st_order*, bool, bool) /test/11.6_opt_san/sql/sql_table.cc:10820
|
#4 0x557140400622 in Sql_cmd_alter_table::execute(THD*) /test/11.6_opt_san/sql/sql_alter.cc:701
|
#5 0x55713fa109a4 in mysql_execute_command(THD*, bool) /test/11.6_opt_san/sql/sql_parse.cc:5842
|
#6 0x55713fa30652 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /test/11.6_opt_san/sql/sql_parse.cc:7867
|
#7 0x55713fa3cb4e in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /test/11.6_opt_san/sql/sql_parse.cc:1892
|
#8 0x55713fa48a28 in do_command(THD*, bool) /test/11.6_opt_san/sql/sql_parse.cc:1405
|
#9 0x5571403d60cc in do_handle_one_connection(CONNECT*, bool) /test/11.6_opt_san/sql/sql_connect.cc:1448
|
#10 0x5571403d86d4 in handle_one_connection /test/11.6_opt_san/sql/sql_connect.cc:1350
|
#11 0x14903e897ad9 in start_thread nptl/pthread_create.c:444
|
#12 0x14903e92847b in clone3 ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
|
|
0x62d000276448 is located 72 bytes inside of 34560-byte region [0x62d000276400,0x62d00027eb00)
|
freed by thread T15 here:
|
#0 0x55713f1396b7 in free (/test/UBASAN_MD200724-mariadb-11.6.0-linux-x86_64-opt/bin/mariadbd+0x7ff66b7)
|
#1 0x1490197eca27 in spider_free_mem(st_spider_transaction*, void*, unsigned long) /test/11.6_opt_san/storage/spider/spd_malloc.cc:183
|
#2 0x14901964437b in spider_free_trx(st_spider_transaction*, bool, bool) /test/11.6_opt_san/storage/spider/spd_trx.cc:1420
|
#3 0x14901972c26d in spider_close_connection(handlerton*, THD*) /test/11.6_opt_san/storage/spider/spd_table.cc:6285
|
#4 0x557141098bb5 in ha_close_connection(THD*) /test/11.6_opt_san/sql/handler.cc:958
|
#5 0x55713f6b1125 in THD::free_connection() /test/11.6_opt_san/sql/sql_class.cc:1678
|
#6 0x5571403d5292 in do_handle_one_connection(CONNECT*, bool) /test/11.6_opt_san/sql/sql_connect.cc:1459
|
#7 0x5571403d86d4 in handle_one_connection /test/11.6_opt_san/sql/sql_connect.cc:1350
|
#8 0x14903e897ad9 in start_thread nptl/pthread_create.c:444
|
|
previously allocated by thread T15 here:
|
#0 0x55713f139a07 in malloc (/test/UBASAN_MD200724-mariadb-11.6.0-linux-x86_64-opt/bin/mariadbd+0x7ff6a07)
|
#1 0x5571437be2e4 in my_malloc /test/11.6_opt_san/mysys/my_malloc.c:93
|
#2 0x1490197ecebb in spider_bulk_alloc_mem(st_spider_transaction*, unsigned int, char const*, char const*, unsigned long, unsigned long, ...) /test/11.6_opt_san/storage/spider/spd_malloc.cc:231
|
#3 0x149019644682 in spider_get_trx(THD*, bool, int*) /test/11.6_opt_san/storage/spider/spd_trx.cc:1145
|
#4 0x1490197a47d6 in spider_init_share(char const*, TABLE*, THD*, ha_spider*, int*, st_spider_share*, TABLE_SHARE*, bool) /test/11.6_opt_san/storage/spider/spd_table.cc:5467
|
#5 0x1490197a6f8b in spider_get_share(char const*, TABLE*, THD*, ha_spider*, int*) /test/11.6_opt_san/storage/spider/spd_table.cc:5634
|
#6 0x14901989c49c in ha_spider::open(char const*, int, unsigned int) /test/11.6_opt_san/storage/spider/ha_spider.cc:312
|
#7 0x5571410b0d10 in handler::ha_open(TABLE*, char const*, int, unsigned int, st_mem_root*, List<String>*) /test/11.6_opt_san/sql/handler.cc:3578
|
#8 0x55714254df02 in ha_partition::open_read_partitions(char*, unsigned long) /test/11.6_opt_san/sql/ha_partition.cc:8970
|
#9 0x5571425523eb in ha_partition::open(char const*, int, unsigned int) /test/11.6_opt_san/sql/ha_partition.cc:3929
|
#10 0x5571410b0d10 in handler::ha_open(TABLE*, char const*, int, unsigned int, st_mem_root*, List<String>*) /test/11.6_opt_san/sql/handler.cc:3578
|
#11 0x557140247a77 in open_table_from_share(THD*, TABLE_SHARE*, st_mysql_const_lex_string const*, unsigned int, unsigned int, unsigned int, TABLE*, bool, List<String>*) /test/11.6_opt_san/sql/table.cc:4599
|
#12 0x55713f5df4be in open_table(THD*, TABLE_LIST*, Open_table_context*) /test/11.6_opt_san/sql/sql_base.cc:2240
|
#13 0x55713f5f6289 in open_and_process_table /test/11.6_opt_san/sql/sql_base.cc:4174
|
#14 0x55713f5f6289 in open_tables(THD*, DDL_options_st const&, TABLE_LIST**, unsigned int*, unsigned int, Prelocking_strategy*) /test/11.6_opt_san/sql/sql_base.cc:4660
|
#15 0x55713f5fb5b4 in open_tables /test/11.6_opt_san/sql/sql_base.h:273
|
#16 0x55713f5fb5b4 in open_normal_and_derived_tables(THD*, TABLE_LIST*, unsigned int, unsigned int) /test/11.6_opt_san/sql/sql_base.cc:5699
|
#17 0x55713f5fbd94 in open_tables_only_view_structure(THD*, TABLE_LIST*, bool) /test/11.6_opt_san/sql/sql_base.cc:5750
|
#18 0x55713fea4520 in fill_schema_table_by_open /test/11.6_opt_san/sql/sql_show.cc:4808
|
#19 0x55713ff5b505 in get_all_tables(THD*, TABLE_LIST*, Item*) /test/11.6_opt_san/sql/sql_show.cc:5608
|
#20 0x55713ff69ba8 in get_schema_tables_result(JOIN*, enum_schema_table_state) /test/11.6_opt_san/sql/sql_show.cc:9456
|
#21 0x55713fe6192c in JOIN::exec_inner() /test/11.6_opt_san/sql/sql_select.cc:4982
|
#22 0x55713fe68783 in JOIN::exec() /test/11.6_opt_san/sql/sql_select.cc:4804
|
#23 0x55713fe55c8d 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*) /test/11.6_opt_san/sql/sql_select.cc:5337
|
#24 0x55713fe59890 in handle_select(THD*, LEX*, select_result*, unsigned long long) /test/11.6_opt_san/sql/sql_select.cc:628
|
#25 0x55713f9bdb90 in execute_sqlcom_select /test/11.6_opt_san/sql/sql_parse.cc:6147
|
#26 0x55713fa21282 in mysql_execute_command(THD*, bool) /test/11.6_opt_san/sql/sql_parse.cc:3953
|
#27 0x55713fa30652 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /test/11.6_opt_san/sql/sql_parse.cc:7867
|
#28 0x55713fa3cb4e in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /test/11.6_opt_san/sql/sql_parse.cc:1892
|
#29 0x55713fa48a28 in do_command(THD*, bool) /test/11.6_opt_san/sql/sql_parse.cc:1405
|
#30 0x5571403d60cc in do_handle_one_connection(CONNECT*, bool) /test/11.6_opt_san/sql/sql_connect.cc:1448
|
#31 0x5571403d86d4 in handle_one_connection /test/11.6_opt_san/sql/sql_connect.cc:1350
|
|
Thread T12 created by T0 here:
|
#0 0x55713f0dd825 in __interceptor_pthread_create (/test/UBASAN_MD200724-mariadb-11.6.0-linux-x86_64-opt/bin/mariadbd+0x7f9a825)
|
#1 0x55713f1929ce in create_thread_to_handle_connection(CONNECT*) /test/11.6_opt_san/sql/mysqld.cc:6239
|
#2 0x55713f1a6a4f in handle_accepted_socket(st_mysql_socket, st_mysql_socket) /test/11.6_opt_san/sql/mysqld.cc:6363
|
#3 0x55713f1a7b37 in handle_connections_sockets() /test/11.6_opt_san/sql/mysqld.cc:6476
|
#4 0x55713f1aac0c in mysqld_main(int, char**) /test/11.6_opt_san/sql/mysqld.cc:6134
|
#5 0x14903e8280cf in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
|
|
Thread T15 created by T0 here:
|
#0 0x55713f0dd825 in __interceptor_pthread_create (/test/UBASAN_MD200724-mariadb-11.6.0-linux-x86_64-opt/bin/mariadbd+0x7f9a825)
|
#1 0x55713f1929ce in create_thread_to_handle_connection(CONNECT*) /test/11.6_opt_san/sql/mysqld.cc:6239
|
#2 0x55713f1a6a4f in handle_accepted_socket(st_mysql_socket, st_mysql_socket) /test/11.6_opt_san/sql/mysqld.cc:6363
|
#3 0x55713f1a7b37 in handle_connections_sockets() /test/11.6_opt_san/sql/mysqld.cc:6476
|
#4 0x55713f1aac0c in mysqld_main(int, char**) /test/11.6_opt_san/sql/mysqld.cc:6134
|
#5 0x14903e8280cf in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
|
|
SUMMARY: AddressSanitizer: heap-use-after-free /test/11.6_opt_san/storage/spider/ha_spider.cc:8609 in ha_spider::update_create_info(HA_CREATE_INFO*)
|
Shadow bytes around the buggy address:
|
0x0c5a80046c30: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
|
0x0c5a80046c40: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
|
0x0c5a80046c50: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
|
0x0c5a80046c60: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
|
0x0c5a80046c70: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
|
=>0x0c5a80046c80: fd fd fd fd fd fd fd fd fd[fd]fd fd fd fd fd fd
|
0x0c5a80046c90: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c5a80046ca0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c5a80046cb0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c5a80046cc0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
|
0x0c5a80046cd0: 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
|
Shadow gap: cc
|
==1477612==ABORTING
|
240723 9:36:11 [ERROR] mysqld got signal 6 ;
|
In 11.5 and 11.6 this gives a different SIGSEGV in optimized builds:
11.5.2 2f4b0ba328420980c23562da20ab0caa9d69b845 (Optimized)
Core was generated by `/test/MD200724-mariadb-11.5.2-linux-x86_64-opt/bin/mariadbd --no-defaults --max'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 my_hash_insert (info=0x15105803fdd8, record=0x15106c0a7878 "")at /test/11.5_opt/mysys/hash.c:520
[Current thread is 1 (LWP 1346102)]
(gdb) bt
#0 my_hash_insert (info=0x15105803fdd8, record=0x15106c0a7878 "")at /test/11.5_opt/mysys/hash.c:520
#1 0x0000151094ca1479 in spider_create_trx_alter_table (trx=trx@entry=0x15105803fbd8, share=0x15105803c2d8, now_create=now_create@entry=false)at /test/11.5_opt/storage/spider/spd_trx.cc:822
#2 0x0000151094d082ca in ha_spider::update_create_info (this=0x151058039c60, create_info=0x151094da87e0)at /test/11.5_opt/storage/spider/ha_spider.cc:8619
#3 0x00005609836eebb3 in ha_partition::update_create_info (this=0x151058039350, create_info=<optimized out>)at /test/11.5_opt/sql/ha_partition.cc:2397
#4 0x00005609832d5944 in mysql_prepare_alter_table (thd=thd@entry=0x15106c000c68, table=table@entry=0x151058038ae8, create_info=create_info@entry=0x151094dabc20, alter_info=alter_info@entry=0x151094dabab0, alter_ctx=alter_ctx@entry=0x151094daad60)at /test/11.5_opt/sql/sql_table.cc:9194
#5 0x00005609832dc677 in mysql_alter_table (thd=thd@entry=0x15106c000c68, new_db=new_db@entry=0x15106c005868, new_name=new_name@entry=0x15106c005cc8, create_info=create_info@entry=0x151094dabc20, table_list=<optimized out>, table_list@entry=0x15106c017fe8, recreate_info=recreate_info@entry=0x151094daba90, alter_info=0x151094dabab0, order_num=0, order=0x0, ignore=false, if_exists=false) at /test/11.5_opt/sql/sql_table.cc:10820
#6 0x000056098334fc55 in Sql_cmd_alter_table::execute (this=<optimized out>, thd=0x15106c000c68) at /test/11.5_opt/sql/structs.h:605
#7 0x00005609832154a9 in mysql_execute_command (thd=thd@entry=0x15106c000c68, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false)at /test/11.5_opt/sql/sql_parse.cc:5842
#8 0x00005609832164f6 in mysql_parse (thd=0x15106c000c68, rawbuf=<optimized out>, length=<optimized out>, parser_state=<optimized out>) at /test/11.5_opt/sql/sql_parse.cc:7867
#9 0x0000560983218715 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x15106c000c68, packet=packet@entry=0x15106c008859 "ALTER TABLE t1 CHANGE COLUMN c1 d1 INT", packet_length=packet_length@entry=38, blocking=blocking@entry=true)at /test/11.5_opt/sql/sql_parse.cc:1991
#10 0x000056098321ace3 in do_command (thd=0x15106c000c68, blocking=blocking@entry=true) at /test/11.5_opt/sql/sql_parse.cc:1405
#11 0x000056098334a9cf in do_handle_one_connection (connect=<optimized out>, connect@entry=0x560986d5bde8, put_in_cache=put_in_cache@entry=true)at /test/11.5_opt/sql/sql_connect.cc:1447
#12 0x000056098334ad1d in handle_one_connection (arg=arg@entry=0x560986d5bde8)at /test/11.5_opt/sql/sql_connect.cc:1349
#13 0x00005609837028a1 in pfs_spawn_thread (arg=0x560986d826d8)at /test/11.5_opt/storage/perfschema/pfs.cc:2201
#14 0x00001510b5697ada in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:444
#15 0x00001510b572847c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78