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

Server crash, hang or ASAN errors in mysql_create_frm_image upon using non-default table options and system variables

    XMLWordPrintable

Details

    Description

      --source include/have_innodb.inc
       
      SET mhnsw_distance_function= cosine;
       
      CREATE TABLE t (a INT, v BLOB NOT NULL) ENGINE=InnoDB;
      PREPARE stmt FROM 'ALTER TABLE t DROP INDEX IF EXISTS v, ADD VECTOR (v) max_edges_per_node=10';
      EXECUTE stmt;
      EXECUTE stmt;
       
      # Cleanup
      DROP TABLE t;
      

      bb-11.6-MDEV-32887-vector b29dca95bd255ae9551fd319f1e8ecbaaae4b4ac ASAN

      ==3896990==ERROR: AddressSanitizer: use-after-poison on address 0x6290000fb260 at pc 0x55fe2802b368 bp 0x7f2e81a1e7a0 sp 0x7f2e81a1e798
      READ of size 8 at 0x6290000fb260 thread T10
          #0 0x55fe2802b367 in Lex_ident<Compare_ident_ci>::is_valid_ident() const /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/lex_ident.h:79
          #1 0x55fe2802ab80 in Lex_ident<Compare_ident_ci>::streq(st_mysql_const_lex_string const&) const /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/lex_ident.h:118
          #2 0x55fe288b142d in parse_option_list(THD*, st_plugin_int*, void*, engine_option_value**, st_ha_create_table_option*, bool, bool, st_mem_root*) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/create_options.cc:264
          #3 0x55fe285dfe89 in mysql_prepare_create_table_finalize /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_table.cc:3321
          #4 0x55fe285e97e1 in mysql_create_frm_image(THD*, HA_CREATE_INFO*, Alter_info*, int, st_key**, unsigned int*, st_mysql_const_unsigned_lex_string*) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_table.cc:4412
          #5 0x55fe285eb6de in create_table_impl /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_table.cc:4734
          #6 0x55fe2861aa3b 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) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_table.cc:11231
          #7 0x55fe287f08f0 in Sql_cmd_alter_table::execute(THD*) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_alter.cc:701
          #8 0x55fe28301431 in mysql_execute_command(THD*, bool) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_parse.cc:5846
          #9 0x55fe283a2165 in Prepared_statement::execute(String*, bool) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_prepare.cc:5050
          #10 0x55fe2839d0c8 in Prepared_statement::execute_loop(String*, bool, unsigned char*, unsigned char*) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_prepare.cc:4427
          #11 0x55fe28396581 in mysql_sql_stmt_execute(THD*) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_prepare.cc:3446
          #12 0x55fe282f3768 in mysql_execute_command(THD*, bool) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_parse.cc:3969
          #13 0x55fe2830e549 in mysql_parse(THD*, char*, unsigned int, Parser_state*) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_parse.cc:7873
          #14 0x55fe282e556b in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_parse.cc:1892
          #15 0x55fe282e227f in do_command(THD*, bool) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_parse.cc:1405
          #16 0x55fe287d18c8 in do_handle_one_connection(CONNECT*, bool) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_connect.cc:1448
          #17 0x55fe287d1289 in handle_one_connection /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_connect.cc:1350
          #18 0x55fe29474301 in pfs_spawn_thread /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/storage/perfschema/pfs.cc:2198
          #19 0x7f2e910a8043 in start_thread nptl/pthread_create.c:442
          #20 0x7f2e9112861b in clone3 ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
       
      0x6290000fb260 is located 4192 bytes inside of 16400-byte region [0x6290000fa200,0x6290000fe210)
      allocated by thread T10 here:
          #0 0x7f2e91cb89cf in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cpp:69
          #1 0x55fe2a1ef2ea in my_malloc /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/mysys/my_malloc.c:93
          #2 0x55fe2a1c18b6 in root_alloc /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/mysys/my_alloc.c:66
          #3 0x55fe2a1c28ab in reset_root_defaults /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/mysys/my_alloc.c:244
          #4 0x55fe2819cd00 in THD::init_for_queries() /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_class.cc:1507
          #5 0x55fe287d0b5a in prepare_new_connection_state(THD*) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_connect.cc:1276
          #6 0x55fe287d130a in thd_prepare_connection(THD*) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_connect.cc:1371
          #7 0x55fe287d1822 in do_handle_one_connection(CONNECT*, bool) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_connect.cc:1438
          #8 0x55fe287d1289 in handle_one_connection /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/sql_connect.cc:1350
          #9 0x55fe29474301 in pfs_spawn_thread /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/storage/perfschema/pfs.cc:2198
          #10 0x7f2e910a8043 in start_thread nptl/pthread_create.c:442
       
      Thread T10 created by T0 here:
          #0 0x7f2e91c49726 in __interceptor_pthread_create ../../../../src/libsanitizer/asan/asan_interceptors.cpp:207
          #1 0x55fe294700a3 in my_thread_create /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/storage/perfschema/my_thread.h:38
          #2 0x55fe294746f0 in pfs_spawn_thread_v1 /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/storage/perfschema/pfs.cc:2249
          #3 0x55fe27efec33 in inline_mysql_thread_create /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/include/mysql/psi/mysql_thread.h:1139
          #4 0x55fe27f173fa in create_thread_to_handle_connection(CONNECT*) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/mysqld.cc:6267
          #5 0x55fe27f17a1f in create_new_thread(CONNECT*) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/mysqld.cc:6329
          #6 0x55fe27f17d0a in handle_accepted_socket(st_mysql_socket, st_mysql_socket) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/mysqld.cc:6391
          #7 0x55fe27f18992 in handle_connections_sockets() /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/mysqld.cc:6504
          #8 0x55fe27f16c77 in mysqld_main(int, char**) /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/mysqld.cc:6162
          #9 0x55fe27efdd58 in main /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/main.cc:34
          #10 0x7f2e910461c9 in __libc_start_call_main ../sysdeps/nptl/libc_start_call_main.h:58
       
      SUMMARY: AddressSanitizer: use-after-poison /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-asan/sql/lex_ident.h:79 in Lex_ident<Compare_ident_ci>::is_valid_ident() const
      Shadow bytes around the buggy address:
        0x0c52800175f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        0x0c5280017600: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        0x0c5280017610: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
        0x0c5280017620: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 f7
        0x0c5280017630: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      =>0x0c5280017640: 00 00 00 00 00 00 00 f7 00 00 00 00[f7]00 04 f7
        0x0c5280017650: f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7
        0x0c5280017660: f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7
        0x0c5280017670: f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7
        0x0c5280017680: f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7
        0x0c5280017690: f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7 f7
      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
      ==3896990==ABORTING
      241007 15:07:14 [ERROR] mysqld got signal 6 ;
      Sorry, we probably made a mistake, and this is a bug.
       
      Your assistance in bug reporting will enable us to fix this for the next release.
      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: 11.7.0-MariaDB-debug-log source revision: b29dca95bd255ae9551fd319f1e8ecbaaae4b4ac
      key_buffer_size=1048576
      read_buffer_size=131072
      max_used_connections=1
      max_threads=153
      thread_count=1
      It is possible that mysqld could use up to 
      key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 64017 K  bytes of memory
      Hope that's ok; if not, decrease some variables in the equation.
       
      Thread pointer: 0x62c0001e0218
      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 = 0x7f2e81a27bd0 thread_stack 0xb00000
      sanitizer_common/sanitizer_common_interceptors.inc:4277(__interceptor_backtrace.part.0)[0x7f2e91c51f31]
      mysys/stacktrace.c:215(my_print_stacktrace)[0x55fe2a2001b5]
      sql/signal_handler.cc:239(handle_fatal_signal)[0x55fe28c6bde8]
      libc_sigaction.c:0(__restore_rt)[0x7f2e9105afd0]
      nptl/pthread_kill.c:44(__pthread_kill_implementation)[0x7f2e910a9d3c]
      posix/raise.c:27(__GI_raise)[0x7f2e9105af32]
      stdlib/abort.c:81(__GI_abort)[0x7f2e91045472]
      sanitizer_common/sanitizer_posix_libcdep.cpp:137(__sanitizer::Abort())[0x7f2e91cd650f]
      sanitizer_common/sanitizer_termination.cpp:59(__sanitizer::Die())[0x7f2e91ce2ba1]
      asan/asan_report.cpp:190(__asan::ScopedInErrorReport::~ScopedInErrorReport())[0x7f2e91cc1f5e]
      asan/asan_report.cpp:479(__asan::ReportGenericError(unsigned long, unsigned long, unsigned long, unsigned long, bool, unsigned long, unsigned int, bool))[0x7f2e91cc14c6]
      asan/asan_rtl.cpp:123(__asan_report_load8)[0x7f2e91cc25ac]
      sql/lex_ident.h:79(Lex_ident<Compare_ident_ci>::is_valid_ident() const)[0x55fe2802b368]
      sql/lex_ident.h:118(Lex_ident<Compare_ident_ci>::streq(st_mysql_const_lex_string const&) const)[0x55fe2802ab81]
      sql/create_options.cc:264(parse_option_list(THD*, st_plugin_int*, void*, engine_option_value**, st_ha_create_table_option*, bool, bool, st_mem_root*))[0x55fe288b142e]
      sql/sql_table.cc:3321(mysql_prepare_create_table_finalize(THD*, HA_CREATE_INFO*, Alter_info*, unsigned int*, handler*, st_key**, unsigned int*, int))[0x55fe285dfe8a]
      sql/sql_table.cc:4412(mysql_create_frm_image(THD*, HA_CREATE_INFO*, Alter_info*, int, st_key**, unsigned int*, st_mysql_const_unsigned_lex_string*))[0x55fe285e97e2]
      sql/sql_table.cc:4734(create_table_impl(THD*, st_ddl_log_state*, st_ddl_log_state*, Lex_ident_db const&, Lex_ident_table const&, st_mysql_const_lex_string const&, st_mysql_const_lex_string const&, st_mysql_const_lex_string const&, DDL_options_st, HA_CREATE_INFO*, Alter_info*, int, bool*, st_key**, unsigned int*, st_mysql_const_unsigned_lex_string*))[0x55fe285eb6df]
      sql/sql_table.cc:11231(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))[0x55fe2861aa3c]
      sql/sql_alter.cc:701(Sql_cmd_alter_table::execute(THD*))[0x55fe287f08f1]
      sql/sql_parse.cc:5846(mysql_execute_command(THD*, bool))[0x55fe28301432]
      sql/sql_prepare.cc:5050(Prepared_statement::execute(String*, bool))[0x55fe283a2166]
      sql/sql_prepare.cc:4427(Prepared_statement::execute_loop(String*, bool, unsigned char*, unsigned char*))[0x55fe2839d0c9]
      sql/sql_prepare.cc:3447(mysql_sql_stmt_execute(THD*))[0x55fe28396582]
      sql/sql_parse.cc:3970(mysql_execute_command(THD*, bool))[0x55fe282f3769]
      sql/sql_parse.cc:7873(mysql_parse(THD*, char*, unsigned int, Parser_state*))[0x55fe2830e54a]
      sql/sql_parse.cc:1894(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool))[0x55fe282e556c]
      sql/sql_parse.cc:1405(do_command(THD*, bool))[0x55fe282e2280]
      sql/sql_connect.cc:1448(do_handle_one_connection(CONNECT*, bool))[0x55fe287d18c9]
      sql/sql_connect.cc:1352(handle_one_connection)[0x55fe287d128a]
      perfschema/pfs.cc:2200(pfs_spawn_thread)[0x55fe29474302]
      nptl/pthread_create.c:442(start_thread)[0x7f2e910a8044]
      x86_64/clone3.S:83(clone3)[0x7f2e9112861c]
       
      Trying to get some variables.
      Some pointers may be invalid and cause the dump to abort.
      Query (0x6290000fa2d0): ALTER TABLE t DROP INDEX IF EXISTS v, ADD VECTOR (v) max_edges_per_node=10
       
      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,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=on,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,rowid_filter=on,condition_pushdown_from_having=on,not_null_range_scan=off,hash_join_cardinality=on,cset_narrowing=on,sargable_casefold=on
       
      The manual page at https://mariadb.com/kb/en/how-to-produce-a-full-stack-trace-for-mariadbd/ contains
      information that should help you find out what is causing the crash.
      Writing a core file...
      Working directory at /dev/shm/var_auto_oC2y/mysqld.1/data
      Resource Limits:
      Limit                     Soft Limit           Hard Limit           Units     
      Max cpu time              unlimited            unlimited            seconds   
      Max file size             unlimited            unlimited            bytes     
      Max data size             unlimited            unlimited            bytes     
      Max stack size            8388608              unlimited            bytes     
      Max core file size        unlimited            unlimited            bytes     
      Max resident set          unlimited            unlimited            bytes     
      Max processes             514730               514730               processes 
      Max open files            65536                65536                files     
      Max locked memory         16876769280          16876769280          bytes     
      Max address space         unlimited            unlimited            bytes     
      Max file locks            unlimited            unlimited            locks     
      Max pending signals       514730               514730               signals   
      Max msgqueue size         819200               819200               bytes     
      Max nice priority         0                    0                    
      Max realtime priority     0                    0                    
      Max realtime timeout      unlimited            unlimited            us        
      Core pattern: core
       
      Kernel version: Linux version 6.1.0-13-amd64 (debian-kernel@lists.debian.org) (gcc-12 (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP PREEMPT_DYNAMIC Debian 6.1.55-1 (2023-09-29)
      

      RelWithDebInfo

      #2  <signal handler called>
      #3  0x000055a1e7c0c280 in engine_option_value::link (this=this@entry=0x7faeb8013da0, start=start@entry=0x7faeb8013d58, end=end@entry=0x7faedc3cd268) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/create_options.cc:49
      #4  0x000055a1e7c0c5ee in parse_option_list (thd=0x7faeb8000c68, plugin=0x55a1eb3da020, option_struct_arg=0x7faeb8013d60, option_list=0x7faeb8013d58, rules=<optimized out>, suppress_warning=suppress_warning@entry=false, create=<optimized out>, root=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/create_options.cc:326
      #5  0x000055a1e7b58a80 in mysql_prepare_create_table_finalize (thd=thd@entry=0x7faeb8000c68, create_info=create_info@entry=0x7faedc3d0ab0, alter_info=alter_info@entry=0x7faedc3d0940, db_options=db_options@entry=0x7faedc3cd658, file=file@entry=0x7faeb8013458, key_info_buffer=key_info_buffer@entry=0x7faedc3ce018, key_count=<optimized out>, create_table_mode=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_table.cc:3321
      #6  0x000055a1e7b5b7af in mysql_create_frm_image (thd=thd@entry=0x7faeb8000c68, create_info=create_info@entry=0x7faedc3d0ab0, alter_info=alter_info@entry=0x7faedc3d0940, create_table_mode=create_table_mode@entry=-3, key_info=key_info@entry=0x7faedc3ce018, key_count=key_count@entry=0x7faedc3ce008, frm=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_table.cc:4412
      #7  0x000055a1e7b5f420 in create_table_impl (thd=thd@entry=0x7faeb8000c68, ddl_log_state_create=<optimized out>, ddl_log_state_create@entry=0x0, ddl_log_state_rm=<optimized out>, ddl_log_state_rm@entry=0x0, orig_db=..., orig_table_name=..., db=..., table_name=..., path=..., options=..., create_info=<optimized out>, alter_info=<optimized out>, create_table_mode=<optimized out>, is_trans=<optimized out>, key_info=<optimized out>, key_count=<optimized out>, frm=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_table.cc:4734
      #8  0x000055a1e7b6a219 in mysql_alter_table (thd=thd@entry=0x7faeb8000c68, new_db=new_db@entry=0x7faeb81a5210, new_name=new_name@entry=0x7faeb81a5670, create_info=create_info@entry=0x7faedc3d0ab0, table_list=<optimized out>, table_list@entry=0x7faeb81a66f0, recreate_info=recreate_info@entry=0x7faedc3d0920, alter_info=<optimized out>, order_num=<optimized out>, order=<optimized out>, ignore=<optimized out>, if_exists=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_table.cc:11231
      #9  0x000055a1e7bd9da0 in Sql_cmd_alter_table::execute (this=<optimized out>, thd=0x7faeb8000c68) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_alter.cc:701
      #10 0x000055a1e7a9c5e6 in mysql_execute_command (thd=0x7faeb8000c68, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=true) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_parse.cc:5846
      #11 0x000055a1e7ac3a0d in Prepared_statement::execute (this=this@entry=0x7faeb810da08, expanded_query=expanded_query@entry=0x7faedc3d1ca0, open_cursor=open_cursor@entry=false) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_prepare.cc:5050
      #12 0x000055a1e7ac3bae in Prepared_statement::execute_loop (this=this@entry=0x7faeb810da08, expanded_query=expanded_query@entry=0x7faedc3d1ca0, open_cursor=open_cursor@entry=false, packet=packet@entry=0x0, packet_end=packet_end@entry=0x0) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_prepare.cc:4427
      #13 0x000055a1e7ac3edb in mysql_sql_stmt_execute (thd=thd@entry=0x7faeb8000c68) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_prepare.cc:3446
      #14 0x000055a1e7a9de1b in mysql_execute_command (thd=thd@entry=0x7faeb8000c68, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_parse.cc:3969
      #15 0x000055a1e7aa0ea6 in mysql_parse (thd=0x7faeb8000c68, rawbuf=<optimized out>, length=<optimized out>, parser_state=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_parse.cc:7873
      #16 0x000055a1e7aa371d in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x7faeb8000c68, packet=packet@entry=0x7faeb8008869 "EXECUTE stmt", packet_length=packet_length@entry=12, blocking=blocking@entry=true) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_parse.cc:1991
      #17 0x000055a1e7aa5654 in do_command (thd=0x7faeb8000c68, blocking=blocking@entry=true) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_parse.cc:1405
      #18 0x000055a1e7bd4e27 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55a1eba5f178, put_in_cache=put_in_cache@entry=true) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_connect.cc:1448
      #19 0x000055a1e7bd519d in handle_one_connection (arg=arg@entry=0x55a1eba5f178) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_connect.cc:1350
      #20 0x000055a1e7f8ad5c in pfs_spawn_thread (arg=0x55a1eba17d08) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/storage/perfschema/pfs.cc:2198
      #21 0x00007faee98a8044 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
      #22 0x00007faee992861c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
      

      This variation of the test case on a non-ASAN build makes the second EXECUTE loop at 100% CPU instead:

      --source include/have_innodb.inc
       
      SET mhnsw_distance_function= cosine;
       
      CREATE TABLE t (a INT, v BLOB NOT NULL) ENGINE=InnoDB;
      PREPARE stmt FROM 'ALTER TABLE t ADD VECTOR (v) max_edges_per_node=10';
      EXECUTE stmt;
      ALTER TABLE t DROP INDEX IF EXISTS v;
      EXECUTE stmt;
       
      # Cleanup
      DROP TABLE t;
      

      #0  0x0000559ca104d6b7 in report_unknown_option (val=<optimized out>, suppress_warning=<optimized out>, thd=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/create_options.cc:338
      #1  parse_option_list (thd=0x7fc434000c68, plugin=0x559ca407b020, option_struct_arg=<optimized out>, option_list=0x7fc434013cf0, rules=<optimized out>, suppress_warning=suppress_warning@entry=false, create=<optimized out>, root=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/create_options.cc:338
      #2  0x0000559ca0f99a80 in mysql_prepare_create_table_finalize (thd=thd@entry=0x7fc434000c68, create_info=create_info@entry=0x7fc4602f0ab0, alter_info=alter_info@entry=0x7fc4602f0940, db_options=db_options@entry=0x7fc4602ed658, file=file@entry=0x7fc4340133f0, key_info_buffer=key_info_buffer@entry=0x7fc4602ee018, key_count=<optimized out>, create_table_mode=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_table.cc:3321
      #3  0x0000559ca0f9c7af in mysql_create_frm_image (thd=thd@entry=0x7fc434000c68, create_info=create_info@entry=0x7fc4602f0ab0, alter_info=alter_info@entry=0x7fc4602f0940, create_table_mode=create_table_mode@entry=-3, key_info=key_info@entry=0x7fc4602ee018, key_count=key_count@entry=0x7fc4602ee008, frm=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_table.cc:4412
      #4  0x0000559ca0fa0420 in create_table_impl (thd=thd@entry=0x7fc434000c68, ddl_log_state_create=<optimized out>, ddl_log_state_create@entry=0x0, ddl_log_state_rm=<optimized out>, ddl_log_state_rm@entry=0x0, orig_db=..., orig_table_name=..., db=..., table_name=..., path=..., options=..., create_info=<optimized out>, alter_info=<optimized out>, create_table_mode=<optimized out>, is_trans=<optimized out>, key_info=<optimized out>, key_count=<optimized out>, frm=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_table.cc:4734
      #5  0x0000559ca0fab219 in mysql_alter_table (thd=thd@entry=0x7fc434000c68, new_db=new_db@entry=0x7fc43419d890, new_name=new_name@entry=0x7fc43419dcf0, create_info=create_info@entry=0x7fc4602f0ab0, table_list=<optimized out>, table_list@entry=0x7fc43419ed40, recreate_info=recreate_info@entry=0x7fc4602f0920, alter_info=<optimized out>, order_num=<optimized out>, order=<optimized out>, ignore=<optimized out>, if_exists=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_table.cc:11231
      #6  0x0000559ca101ada0 in Sql_cmd_alter_table::execute (this=<optimized out>, thd=0x7fc434000c68) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_alter.cc:701
      #7  0x0000559ca0edd5e6 in mysql_execute_command (thd=0x7fc434000c68, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=true) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_parse.cc:5846
      #8  0x0000559ca0f04a0d in Prepared_statement::execute (this=this@entry=0x7fc4341af498, expanded_query=expanded_query@entry=0x7fc4602f1ca0, open_cursor=open_cursor@entry=false) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_prepare.cc:5050
      #9  0x0000559ca0f04bae in Prepared_statement::execute_loop (this=this@entry=0x7fc4341af498, expanded_query=expanded_query@entry=0x7fc4602f1ca0, open_cursor=open_cursor@entry=false, packet=packet@entry=0x0, packet_end=packet_end@entry=0x0) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_prepare.cc:4427
      #10 0x0000559ca0f04edb in mysql_sql_stmt_execute (thd=thd@entry=0x7fc434000c68) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_prepare.cc:3446
      #11 0x0000559ca0edee1b in mysql_execute_command (thd=thd@entry=0x7fc434000c68, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_parse.cc:3969
      #12 0x0000559ca0ee1ea6 in mysql_parse (thd=0x7fc434000c68, rawbuf=<optimized out>, length=<optimized out>, parser_state=<optimized out>) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_parse.cc:7873
      #13 0x0000559ca0ee471d in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x7fc434000c68, packet=packet@entry=0x7fc434008869 "EXECUTE stmt", packet_length=packet_length@entry=12, blocking=blocking@entry=true) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_parse.cc:1991
      #14 0x0000559ca0ee6654 in do_command (thd=0x7fc434000c68, blocking=blocking@entry=true) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_parse.cc:1405
      #15 0x0000559ca1015e27 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x559ca46fff78, put_in_cache=put_in_cache@entry=true) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_connect.cc:1448
      #16 0x0000559ca101619d in handle_one_connection (arg=arg@entry=0x559ca46fff78) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/sql/sql_connect.cc:1350
      #17 0x0000559ca13cbd5c in pfs_spawn_thread (arg=0x559ca46b8b48) at /data/bld/preview-11.7-bb-11.6-MDEV-32887-vector-rel/storage/perfschema/pfs.cc:2198
      #18 0x00007fc46dfc9044 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
      #19 0x00007fc46e04961c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
      

      Attachments

        Issue Links

          Activity

            People

              serg Sergei Golubchik
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              2 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.