[MDEV-28290] spider.ha and spider.ha_part fail with --debug option Created: 2022-04-11  Updated: 2023-06-06  Resolved: 2023-06-02

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - Spider
Affects Version/s: 10.3
Fix Version/s: N/A

Type: Bug Priority: Major
Reporter: Nayuta Yanagisawa (Inactive) Assignee: Unassigned
Resolution: Cannot Reproduce Votes: 0
Labels: not-10.2, not-10.4


 Description   

The tests, spider.ha and spider.ha_part, fail with --debug option. They pass without the option.

Reproducible on 10.3 but not on 10.2 and 10.4 (why?)

2ae92e89817b1eceed134fcf98e21f99ce26a22d

Thread pointer: 0x7f7e44000d90                                                                                                                                            
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 = 0x7f7f161b4d80 thread_stack 0x49000                            
mysys/stacktrace.c:174(my_print_stacktrace)[0x5565ddb4de0b]                   
sql/signal_handler.cc:221(handle_fatal_signal)[0x5565dd2b75fa]                                                                                                            /lib/x86_64-linux-gnu/libpthread.so.0(+0x141f0)[0x7f7f1d20c1f0]                      
/lib/x86_64-linux-gnu/libc.so.6(+0x1800f1)[0x7f7f1d18c0f1]                           
strings/my_vsnprintf.c:259(process_str_arg)[0x5565ddbaa5a7]                   
strings/my_vsnprintf.c:696(my_vsnprintf_ex)[0x5565ddbac11c]                                                                                                               
strings/my_vsnprintf.c:782(my_vsnprintf)[0x5565ddbac7cb]
dbug/dbug.c:1333(DbugVfprintf)[0x5565ddb72925]                                       
dbug/dbug.c:1317(_db_doprnt_)[0x5565ddb728a0]
spider/spd_sys_table.cc:2439(spider_get_sys_tables_static_link_id(TABLE*, char**, unsigned int*, st_mem_root*))[0x7f7f144660ac]
spider/spd_ping_table.cc:752(spider_get_ping_table_gtid_pos(st_spider_transaction*, THD*, spider_string*, unsigned int, int, unsigned int, bool, spider_string*))[0x7f7f14
4fcbd1]                                                                                                                                                                   
spider/spd_ping_table.cc:1265(spider_ping_table_body(st_udf_init*, st_udf_args*, char*, char*))[0x7f7f144fe8c8]                                                           
spider/spd_udf.cc:95(spider_ping_table)[0x7f7f144fa02c]                                                                                                                   
sql/sql_udf.h:107(udf_handler::val_int(char*))[0x5565dd35d43a]                       
sql/item_func.cc:3608(Item_func_udf_int::val_int())[0x5565dd351118]                  
sql/sql_type.cc:5450(Type_handler::Item_send_longlong(Item*, Protocol*, st_value*) const)[0x5565dd19aea5]
sql/sql_type.h:2499(Type_handler_longlong::Item_send(Item*, Protocol*, st_value*) const)[0x5565dd1a0480]
sql/item.h:885(Item::send(Protocol*, st_value*))[0x5565dce73a22]
sql/protocol.cc:1000(Protocol::send_result_set_row(List<Item>*))[0x5565dce6e157]
sql/sql_class.cc:3060(select_send::send_data(List<Item>&))[0x5565dcf20010]
sql/sql_select.cc:4024(JOIN::exec_inner())[0x5565dcfdcbc9]
sql/sql_select.cc:3945(JOIN::exec())[0x5565dcfdc5aa]
sql/sql_select.cc:4355(mysql_select(THD*, TABLE_LIST*, unsigned int, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_
result*, st_select_lex_unit*, st_select_lex*))[0x5565dcfdd8ef]
sql/sql_select.cc:372(handle_select(THD*, LEX*, select_result*, unsigned long))[0x5565dcfcecfb]
sql/sql_parse.cc:6339(execute_sqlcom_select(THD*, TABLE_LIST*))[0x5565dcf94c8b]
sql/sql_parse.cc:3870(mysql_execute_command(THD*))[0x5565dcf8b657]
sql/sql_parse.cc:7870(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x5565dcf99020]
sql/sql_parse.cc:1855(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x5565dcf856de]
sql/sql_parse.cc:1398(do_command(THD*))[0x5565dcf84083]
sql/sql_connect.cc:1403(do_handle_one_connection(CONNECT*))[0x5565dd105b46]
sql/sql_connect.cc:1309(handle_one_connection)[0x5565dd1058a5]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x9450)[0x7f7f1d201450]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x43)[0x7f7f1d123d53]
 
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (0x7f7e44011678): select spider_ping_table('./auto_test_local/ta_l',1,0,1,'',5,3,1,0,1)
 
Connection ID (thread ID): 30
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=of
f,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_d
erived=on,split_materialized=on



 Comments   
Comment by Nayuta Yanagisawa (Inactive) [ 2022-04-11 ]

The bug is reproducible at least on mariadb-10.3.14. Thus, it was not introduced recently.

Comment by Roel Van de Paar [ 2023-06-02 ]

The crash is no longer reproducible, and 10.3 is EOL.

However, running ./mtr --debug ha_part (or ./mtr --debug ha) on an UBSAN/ASAN build will give:

11.0.2 368dd22a816f3b437bccd0b9ff28b9de9b1abf0a (Debug, UBASAN)

spider/bg.ha_part                        [ fail ]  Found warnings/errors in server log file!
        Test ended at 2023-06-03 09:13:22
line
/test/11.0_dbg_san/storage/spider/spd_trx.cc:760:11: runtime error: null pointer passed as argument 2, which is declared to never be null
/test/11.0_dbg_san/storage/spider/spd_trx.cc:766:11: runtime error: null pointer passed as argument 2, which is declared to never be null
/test/11.0_dbg_san/storage/spider/spd_trx.cc:772:11: runtime error: null pointer passed as argument 2, which is declared to never be null
^ Found warnings in /test/UBASAN_MD120523-mariadb-11.0.2-linux-x86_64-dbg/mysql-test/var/log/mysqld.1.1.err
ok
line
/test/11.0_dbg_san/storage/spider/spd_trx.cc:760:11: runtime error: null pointer passed as argument 2, which is declared to never be null
/test/11.0_dbg_san/storage/spider/spd_trx.cc:766:11: runtime error: null pointer passed as argument 2, which is declared to never be null
/test/11.0_dbg_san/storage/spider/spd_trx.cc:772:11: runtime error: null pointer passed as argument 2, which is declared to never be null
^ Found warnings in /test/UBASAN_MD120523-mariadb-11.0.2-linux-x86_64-dbg/mysql-test/var/log/mysqld.3.3.err
ok
line
/test/11.0_dbg_san/storage/spider/spd_trx.cc:760:11: runtime error: null pointer passed as argument 2, which is declared to never be null
/test/11.0_dbg_san/storage/spider/spd_trx.cc:766:11: runtime error: null pointer passed as argument 2, which is declared to never be null
/test/11.0_dbg_san/storage/spider/spd_trx.cc:772:11: runtime error: null pointer passed as argument 2, which is declared to never be null
^ Found warnings in /test/UBASAN_MD120523-mariadb-11.0.2-linux-x86_64-dbg/mysql-test/var/log/mysqld.3.2.err
ok
line
/test/11.0_dbg_san/storage/spider/spd_trx.cc:760:11: runtime error: null pointer passed as argument 2, which is declared to never be null
/test/11.0_dbg_san/storage/spider/spd_trx.cc:766:11: runtime error: null pointer passed as argument 2, which is declared to never be null
/test/11.0_dbg_san/storage/spider/spd_trx.cc:772:11: runtime error: null pointer passed as argument 2, which is declared to never be null
^ Found warnings in /test/UBASAN_MD120523-mariadb-11.0.2-linux-x86_64-dbg/mysql-test/var/log/mysqld.3.1.err
ok
 
 - saving '/test/UBASAN_MD120523-mariadb-11.0.2-linux-x86_64-dbg/mysql-test/var/log/spider/bg.ha_part/' to '/test/UBASAN_MD120523-mariadb-11.0.2-linux-x86_64-dbg/mysql-test/var/log/bg.ha_part/'
 
Only  1  of 2 completed.

Which is MDEV-30981.

Generated at Thu Feb 08 09:59:34 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.