Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-28290

spider.ha and spider.ha_part fail with --debug option

Details

    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
      

      Attachments

        Activity

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

          nayuta-yanagisawa Nayuta Yanagisawa (Inactive) added a comment - The bug is reproducible at least on mariadb-10.3.14 . Thus, it was not introduced recently.

          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.

          Roel Roel Van de Paar added a comment - 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 .

          People

            Unassigned Unassigned
            nayuta-yanagisawa Nayuta Yanagisawa (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.