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

Assertion `!trx->alloc_line_no[id] || trx->alloc_line_no[id] == line_no' failed in spider_alloc_mem_calc

Details

    Description

      MTR Testcase:

      INSTALL PLUGIN Spider SONAME 'ha_spider.so';
      CREATE TABLE t (c INT) ENGINE=Spider REMOTE_PORT="1";
      DROP TABLE t;
      CREATE TABLE t (c INT) ENGINE=Spider COMMENT="WRAPPER 'mysql', SERVER 's',MONITORING_KIND '1'";
      

      Leads to:

      preview-11.3-preview a4031e4c051d4fc69f466a5678ceb5d3598bf525 (Debug)

      mariadbd: /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc:140: void spider_alloc_mem_calc(SPIDER_TRX*, uint, const char*, const char*, ulong, size_t): Assertion `!trx->alloc_line_no[id] || trx->alloc_line_no[id] == line_no' failed.
      

      preview-11.3-preview a4031e4c051d4fc69f466a5678ceb5d3598bf525 (Debug)

      Core was generated by `/test/MDEV28856_MD141023-mariadb-11.3.0-linux-x86_64-dbg/bin/mariadbd --no-defa'.
      Program terminated with signal SIGABRT, Aborted.
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=22491066328640)
          at ./nptl/pthread_kill.c:44
      [Current thread is 1 (Thread 0x14749c04e640 (LWP 3716731))]
      (gdb) bt
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=22491066328640) at ./nptl/pthread_kill.c:44
      #1  __pthread_kill_internal (signo=6, threadid=22491066328640) at ./nptl/pthread_kill.c:78
      #2  __GI___pthread_kill (threadid=22491066328640, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
      #3  0x000014749e042476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
      #4  0x000014749e0287f3 in __GI_abort () at ./stdlib/abort.c:79
      #5  0x000014749e02871b in __assert_fail_base (fmt=0x14749e1dd150 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x147488146af8 "!trx->alloc_line_no[id] || trx->alloc_line_no[id] == line_no", file=0x147488146788 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc", line=140, function=<optimized out>) at ./assert/assert.c:92
      #6  0x000014749e039e96 in __GI___assert_fail (assertion=0x147488146af8 "!trx->alloc_line_no[id] || trx->alloc_line_no[id] == line_no", file=0x147488146788 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc", line=140, function=0x147488146a10 "void spider_alloc_mem_calc(SPIDER_TRX*, uint, const char*, const char*, ulong, size_t)") at ./assert/assert.c:101
      #7  0x00001474880e7f86 in spider_alloc_mem_calc (trx=trx@entry=0x147418050d38, id=id@entry=38, func_name=func_name@entry=0x14748813d609 "<unknown>", file_name=file_name@entry=0x14748813ee00 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc", line_no=line_no@entry=1334, size=size@entry=24) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc:140
      #8  0x00001474880e834e in spider_bulk_alloc_mem (trx=trx@entry=0x147418050d38, id=id@entry=38, func_name=func_name@entry=0x14748813d609 "<unknown>", file_name=file_name@entry=0x14748813ee00 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc", line_no=line_no@entry=1334, my_flags=my_flags@entry=48) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc:234
      #9  0x00001474880bf458 in spider_create_long_list (long_list=long_list@entry=0x14749c049060, list_length=list_length@entry=0x14749c049234, str=0x14741809f535 "1", length=length@entry=1, min_val=min_val@entry=0, max_val=max_val@entry=3) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc:1334
      #10 0x00001474880cb51b in spider_parse_connect_info (share=share@entry=0x14749c048500, table_share=<optimized out>, part_info=<optimized out>, create_table=create_table@entry=1) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc:2867
      #11 0x00001474880f0710 in ha_spider::create (this=<optimized out>, name=0x14749c04ac60 "./test/t", form=0x14749c049750, info=0x14749c04b200) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/ha_spider.cc:8656
      #12 0x000055bd90ff41ef in handler::ha_create (this=0x1474180a0ba0, name=0x14749c04ac60 "./test/t", form=form@entry=0x14749c049750, info_arg=info_arg@entry=0x14749c04b200) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/handler.cc:5676
      #13 0x000055bd90ffc769 in ha_create_table (thd=thd@entry=0x147418000d58, path=<optimized out>, db=<optimized out>, table_name=<optimized out>, create_info=create_info@entry=0x14749c04b200, frm=frm@entry=0x14749c04ac50, skip_frm_file=<optimized out>) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/handler.cc:6145
      #14 0x000055bd90dcea7b in create_table_impl (thd=thd@entry=0x147418000d58, ddl_log_state_create=ddl_log_state_create@entry=0x14749c04af80, ddl_log_state_rm=<optimized out>, ddl_log_state_rm@entry=0x14749c04b110, orig_db=@0x147418018da0: {str = 0x147418019498 "test", length = 4}, orig_table_name=@0x147418018db0: {str = 0x147418018d50 "t", length = 1}, db=@0x147418018da0: {str = 0x147418019498 "test", length = 4}, table_name=@0x147418018db0: {str = 0x147418018d50 "t", length = 1}, path=@0x14749c04ac40: {str = 0x14749c04ac60 "./test/t", length = 8}, options=<optimized out>, create_info=0x14749c04b200, alter_info=0x14749c04b020, create_table_mode=0, is_trans=0x14749c04af60, key_info=0x14749c04ac38, key_count=0x14749c04ac34, frm=0x14749c04ac50) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:4665
      #15 0x000055bd90dceee6 in mysql_create_table_no_lock (thd=thd@entry=0x147418000d58, ddl_log_state_create=ddl_log_state_create@entry=0x14749c04af80, ddl_log_state_rm=ddl_log_state_rm@entry=0x14749c04b110, db=db@entry=0x147418018da0, table_name=table_name@entry=0x147418018db0, create_info=create_info@entry=0x14749c04b200, alter_info=0x14749c04b020, is_trans=0x14749c04af60, create_table_mode=0, table_list=0x147418018d88) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:4766
      #16 0x000055bd90dd0df6 in mysql_create_table (alter_info=0x14749c04b020, create_info=0x14749c04b200, create_table=0x147418018d88, thd=0x147418000d58) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:4882
      #17 Sql_cmd_create_table_like::execute (this=<optimized out>, thd=0x147418000d58) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:12819
      #18 0x000055bd90ceff44 in mysql_execute_command (thd=thd@entry=0x147418000d58, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_parse.cc:5722
      #19 0x000055bd90cf12a5 in mysql_parse (thd=thd@entry=0x147418000d58, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14749c04d1e0) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_parse.cc:7734
      #20 0x000055bd90cf361b in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x147418000d58, packet=packet@entry=0x14741800b169 "CREATE TABLE t (c INT) ENGINE=Spider COMMENT=\"WRAPPER 'mysql', SERVER 's',MONITORING_KIND '1'\"", packet_length=packet_length@entry=94, blocking=blocking@entry=true) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_class.h:251
      #21 0x000055bd90cf573b in do_command (thd=0x147418000d58, blocking=blocking@entry=true) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_parse.cc:1406
      #22 0x000055bd90e5498d in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55bd93a8f568, put_in_cache=put_in_cache@entry=true) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_connect.cc:1445
      #23 0x000055bd90e54c82 in handle_one_connection (arg=arg@entry=0x55bd93a8f568) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_connect.cc:1347
      #24 0x000055bd912975bc in pfs_spawn_thread (arg=0x55bd939e77b8) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/perfschema/pfs.cc:2201
      #25 0x000014749e094ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
      #26 0x000014749e126a40 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
      

      Not present in preview-11.3-preview pre-MDEV-28856 @ 465f9beea1c43a1dad74330aa2dc30927bc224f5 (and syntax is not valid).
      Present in debug builds only.

      Attachments

        Issue Links

          Activity

            INSTALL PLUGIN Spider SONAME 'ha_spider.so';
            --ERROR 1477
            CREATE TABLE t (c INT) ENGINE=Spider COMMENT="WRAPPER 'mysql',SRV 's',MONITORING_KIND '2'";
            CREATE TABLE t (c INT) ENGINE=Spider REMOTE_PORT="1";
            

            Leads to a slightly different stack:

            11.3.0 a4031e4c051d4fc69f466a5678ceb5d3598bf525

            mariadbd: /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc:140: void spider_alloc_mem_calc(SPIDER_TRX*, uint, const char*, const char*, ulong, size_t): Assertion `!trx->alloc_line_no[id] || trx->alloc_line_no[id] == line_no' failed.
            

            11.3.0 a4031e4c051d4fc69f466a5678ceb5d3598bf525

            Core was generated by `/test/MDEV28856_MD141023-mariadb-11.3.0-linux-x86_64-dbg/bin/mariadbd --default'.
            Program terminated with signal SIGABRT, Aborted.
            #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=22738934298176)
                at ./nptl/pthread_kill.c:44
            [Current thread is 1 (Thread 0x14ae5219f640 (LWP 2195971))]
            (gdb) bt
            #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=22738934298176) at ./nptl/pthread_kill.c:44
            #1  __pthread_kill_internal (signo=6, threadid=22738934298176) at ./nptl/pthread_kill.c:78
            #2  __GI___pthread_kill (threadid=22738934298176, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
            #3  0x000014ae57842476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
            #4  0x000014ae578287f3 in __GI_abort () at ./stdlib/abort.c:79
            #5  0x000014ae5782871b in __assert_fail_base (fmt=0x14ae579dd150 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x14ae5212aaf8 "!trx->alloc_line_no[id] || trx->alloc_line_no[id] == line_no", file=0x14ae5212a788 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc", line=140, function=<optimized out>) at ./assert/assert.c:92
            #6  0x000014ae57839e96 in __GI___assert_fail (assertion=0x14ae5212aaf8 "!trx->alloc_line_no[id] || trx->alloc_line_no[id] == line_no", file=0x14ae5212a788 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc", line=140, function=0x14ae5212aa10 "void spider_alloc_mem_calc(SPIDER_TRX*, uint, const char*, const char*, ulong, size_t)") at ./assert/assert.c:101
            #7  0x000014ae520cbf86 in spider_alloc_mem_calc (trx=trx@entry=0x14ae40200308, id=id@entry=38, func_name=func_name@entry=0x14ae52121609 "<unknown>", file_name=file_name@entry=0x14ae52122e00 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc", line_no=line_no@entry=1415, size=size@entry=24) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc:140
            #8  0x000014ae520cc34e in spider_bulk_alloc_mem (trx=trx@entry=0x14ae40200308, id=id@entry=38, func_name=func_name@entry=0x14ae52121609 "<unknown>", file_name=file_name@entry=0x14ae52122e00 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc", line_no=line_no@entry=1415, my_flags=my_flags@entry=48) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc:234
            #9  0x000014ae520a366e in spider_create_bounded_nat_list (long_list=long_list@entry=0x14ae5219a028, list_length=list_length@entry=0x14ae5219a218, str=str@entry=0x14ae401fb1a0 "1", length=<optimized out>, max_val=max_val@entry=65535) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc:1415
            #10 0x000014ae520b21b7 in spider_parse_connect_info (share=share@entry=0x14ae52199500, table_share=<optimized out>, part_info=<optimized out>, create_table=create_table@entry=1) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc:2562
            #11 0x000014ae520d4710 in ha_spider::create (this=<optimized out>, name=0x14ae5219bc60 "./test/t", form=0x14ae5219a750, info=0x14ae5219c200) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/ha_spider.cc:8656
            #12 0x000055698f1a81ef in handler::ha_create (this=0x14ae401261e0, name=0x14ae5219bc60 "./test/t", form=form@entry=0x14ae5219a750, info_arg=info_arg@entry=0x14ae5219c200) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/handler.cc:5676
            #13 0x000055698f1b0769 in ha_create_table (thd=thd@entry=0x14ae40000d58, path=<optimized out>, db=<optimized out>, table_name=<optimized out>, create_info=create_info@entry=0x14ae5219c200, frm=frm@entry=0x14ae5219bc50, skip_frm_file=<optimized out>) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/handler.cc:6145
            #14 0x000055698ef82a7b in create_table_impl (thd=thd@entry=0x14ae40000d58, ddl_log_state_create=ddl_log_state_create@entry=0x14ae5219bf80, ddl_log_state_rm=<optimized out>, ddl_log_state_rm@entry=0x14ae5219c110, orig_db=@0x14ae400148f0: {str = 0x14ae40014fe8 "test", length = 4}, orig_table_name=@0x14ae40014900: {str = 0x14ae400148a0 "t", length = 1}, db=@0x14ae400148f0: {str = 0x14ae40014fe8 "test", length = 4}, table_name=@0x14ae40014900: {str = 0x14ae400148a0 "t", length = 1}, path=@0x14ae5219bc40: {str = 0x14ae5219bc60 "./test/t", length = 8}, options=<optimized out>, create_info=0x14ae5219c200, alter_info=0x14ae5219c020, create_table_mode=0, is_trans=0x14ae5219bf60, key_info=0x14ae5219bc38, key_count=0x14ae5219bc34, frm=0x14ae5219bc50) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:4665
            #15 0x000055698ef82ee6 in mysql_create_table_no_lock (thd=thd@entry=0x14ae40000d58, ddl_log_state_create=ddl_log_state_create@entry=0x14ae5219bf80, ddl_log_state_rm=ddl_log_state_rm@entry=0x14ae5219c110, db=db@entry=0x14ae400148f0, table_name=table_name@entry=0x14ae40014900, create_info=create_info@entry=0x14ae5219c200, alter_info=0x14ae5219c020, is_trans=0x14ae5219bf60, create_table_mode=0, table_list=0x14ae400148d8) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:4766
            #16 0x000055698ef84df6 in mysql_create_table (alter_info=0x14ae5219c020, create_info=0x14ae5219c200, create_table=0x14ae400148d8, thd=0x14ae40000d58) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:4882
            #17 Sql_cmd_create_table_like::execute (this=<optimized out>, thd=0x14ae40000d58) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:12819
            #18 0x000055698eea3f44 in mysql_execute_command (thd=thd@entry=0x14ae40000d58, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_parse.cc:5722
            #19 0x000055698eea52a5 in mysql_parse (thd=thd@entry=0x14ae40000d58, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14ae5219e1e0) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_parse.cc:7734
            #20 0x000055698eea761b in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x14ae40000d58, packet=packet@entry=0x14ae401111d9 "CREATE TABLE t (c INT) ENGINE=Spider REMOTE_PORT=\"1\"", packet_length=packet_length@entry=52, blocking=blocking@entry=true) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_class.h:251
            #21 0x000055698eea973b in do_command (thd=0x14ae40000d58, blocking=blocking@entry=true) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_parse.cc:1406
            #22 0x000055698f00898d in do_handle_one_connection (connect=<optimized out>, connect@entry=0x5569928b52c8, put_in_cache=put_in_cache@entry=true) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_connect.cc:1445
            #23 0x000055698f008c82 in handle_one_connection (arg=arg@entry=0x5569928b52c8) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_connect.cc:1347
            #24 0x000055698f44b5bc in pfs_spawn_thread (arg=0x55699283f218) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/perfschema/pfs.cc:2201
            #25 0x000014ae57894ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
            #26 0x000014ae57926a40 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
            

            Roel Roel Van de Paar added a comment - INSTALL PLUGIN Spider SONAME 'ha_spider.so' ; --ERROR 1477 CREATE TABLE t (c INT ) ENGINE=Spider COMMENT= "WRAPPER 'mysql',SRV 's',MONITORING_KIND '2'" ; CREATE TABLE t (c INT ) ENGINE=Spider REMOTE_PORT= "1" ; Leads to a slightly different stack: 11.3.0 a4031e4c051d4fc69f466a5678ceb5d3598bf525 mariadbd: /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc:140: void spider_alloc_mem_calc(SPIDER_TRX*, uint, const char*, const char*, ulong, size_t): Assertion `!trx->alloc_line_no[id] || trx->alloc_line_no[id] == line_no' failed. 11.3.0 a4031e4c051d4fc69f466a5678ceb5d3598bf525 Core was generated by `/test/MDEV28856_MD141023-mariadb-11.3.0-linux-x86_64-dbg/bin/mariadbd --default'. Program terminated with signal SIGABRT, Aborted. #0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=22738934298176) at ./nptl/pthread_kill.c:44 [Current thread is 1 (Thread 0x14ae5219f640 (LWP 2195971))] (gdb) bt #0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=22738934298176) at ./nptl/pthread_kill.c:44 #1 __pthread_kill_internal (signo=6, threadid=22738934298176) at ./nptl/pthread_kill.c:78 #2 __GI___pthread_kill (threadid=22738934298176, signo=signo@entry=6) at ./nptl/pthread_kill.c:89 #3 0x000014ae57842476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #4 0x000014ae578287f3 in __GI_abort () at ./stdlib/abort.c:79 #5 0x000014ae5782871b in __assert_fail_base (fmt=0x14ae579dd150 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x14ae5212aaf8 "!trx->alloc_line_no[id] || trx->alloc_line_no[id] == line_no", file=0x14ae5212a788 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc", line=140, function=<optimized out>) at ./assert/assert.c:92 #6 0x000014ae57839e96 in __GI___assert_fail (assertion=0x14ae5212aaf8 "!trx->alloc_line_no[id] || trx->alloc_line_no[id] == line_no", file=0x14ae5212a788 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc", line=140, function=0x14ae5212aa10 "void spider_alloc_mem_calc(SPIDER_TRX*, uint, const char*, const char*, ulong, size_t)") at ./assert/assert.c:101 #7 0x000014ae520cbf86 in spider_alloc_mem_calc (trx=trx@entry=0x14ae40200308, id=id@entry=38, func_name=func_name@entry=0x14ae52121609 "<unknown>", file_name=file_name@entry=0x14ae52122e00 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc", line_no=line_no@entry=1415, size=size@entry=24) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc:140 #8 0x000014ae520cc34e in spider_bulk_alloc_mem (trx=trx@entry=0x14ae40200308, id=id@entry=38, func_name=func_name@entry=0x14ae52121609 "<unknown>", file_name=file_name@entry=0x14ae52122e00 "/test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc", line_no=line_no@entry=1415, my_flags=my_flags@entry=48) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_malloc.cc:234 #9 0x000014ae520a366e in spider_create_bounded_nat_list (long_list=long_list@entry=0x14ae5219a028, list_length=list_length@entry=0x14ae5219a218, str=str@entry=0x14ae401fb1a0 "1", length=<optimized out>, max_val=max_val@entry=65535) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc:1415 #10 0x000014ae520b21b7 in spider_parse_connect_info (share=share@entry=0x14ae52199500, table_share=<optimized out>, part_info=<optimized out>, create_table=create_table@entry=1) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/spd_table.cc:2562 #11 0x000014ae520d4710 in ha_spider::create (this=<optimized out>, name=0x14ae5219bc60 "./test/t", form=0x14ae5219a750, info=0x14ae5219c200) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/spider/ha_spider.cc:8656 #12 0x000055698f1a81ef in handler::ha_create (this=0x14ae401261e0, name=0x14ae5219bc60 "./test/t", form=form@entry=0x14ae5219a750, info_arg=info_arg@entry=0x14ae5219c200) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/handler.cc:5676 #13 0x000055698f1b0769 in ha_create_table (thd=thd@entry=0x14ae40000d58, path=<optimized out>, db=<optimized out>, table_name=<optimized out>, create_info=create_info@entry=0x14ae5219c200, frm=frm@entry=0x14ae5219bc50, skip_frm_file=<optimized out>) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/handler.cc:6145 #14 0x000055698ef82a7b in create_table_impl (thd=thd@entry=0x14ae40000d58, ddl_log_state_create=ddl_log_state_create@entry=0x14ae5219bf80, ddl_log_state_rm=<optimized out>, ddl_log_state_rm@entry=0x14ae5219c110, orig_db=@0x14ae400148f0: {str = 0x14ae40014fe8 "test", length = 4}, orig_table_name=@0x14ae40014900: {str = 0x14ae400148a0 "t", length = 1}, db=@0x14ae400148f0: {str = 0x14ae40014fe8 "test", length = 4}, table_name=@0x14ae40014900: {str = 0x14ae400148a0 "t", length = 1}, path=@0x14ae5219bc40: {str = 0x14ae5219bc60 "./test/t", length = 8}, options=<optimized out>, create_info=0x14ae5219c200, alter_info=0x14ae5219c020, create_table_mode=0, is_trans=0x14ae5219bf60, key_info=0x14ae5219bc38, key_count=0x14ae5219bc34, frm=0x14ae5219bc50) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:4665 #15 0x000055698ef82ee6 in mysql_create_table_no_lock (thd=thd@entry=0x14ae40000d58, ddl_log_state_create=ddl_log_state_create@entry=0x14ae5219bf80, ddl_log_state_rm=ddl_log_state_rm@entry=0x14ae5219c110, db=db@entry=0x14ae400148f0, table_name=table_name@entry=0x14ae40014900, create_info=create_info@entry=0x14ae5219c200, alter_info=0x14ae5219c020, is_trans=0x14ae5219bf60, create_table_mode=0, table_list=0x14ae400148d8) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:4766 #16 0x000055698ef84df6 in mysql_create_table (alter_info=0x14ae5219c020, create_info=0x14ae5219c200, create_table=0x14ae400148d8, thd=0x14ae40000d58) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:4882 #17 Sql_cmd_create_table_like::execute (this=<optimized out>, thd=0x14ae40000d58) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_table.cc:12819 #18 0x000055698eea3f44 in mysql_execute_command (thd=thd@entry=0x14ae40000d58, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_parse.cc:5722 #19 0x000055698eea52a5 in mysql_parse (thd=thd@entry=0x14ae40000d58, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14ae5219e1e0) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_parse.cc:7734 #20 0x000055698eea761b in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x14ae40000d58, packet=packet@entry=0x14ae401111d9 "CREATE TABLE t (c INT) ENGINE=Spider REMOTE_PORT=\"1\"", packet_length=packet_length@entry=52, blocking=blocking@entry=true) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_class.h:251 #21 0x000055698eea973b in do_command (thd=0x14ae40000d58, blocking=blocking@entry=true) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_parse.cc:1406 #22 0x000055698f00898d in do_handle_one_connection (connect=<optimized out>, connect@entry=0x5569928b52c8, put_in_cache=put_in_cache@entry=true) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_connect.cc:1445 #23 0x000055698f008c82 in handle_one_connection (arg=arg@entry=0x5569928b52c8) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/sql/sql_connect.cc:1347 #24 0x000055698f44b5bc in pfs_spawn_thread (arg=0x55699283f218) at /test/git-bisect/preview-11.3-preview_MDEV-28856_patched_dbg/storage/perfschema/pfs.cc:2201 #25 0x000014ae57894ac3 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442 #26 0x000014ae57926a40 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81

            The issue is seen very often, terminating many tests, and thus blocks testing.

            Roel Roel Van de Paar added a comment - The issue is seen very often, terminating many tests, and thus blocks testing.
            Roel Roel Van de Paar added a comment - - edited

            While UB+ASAN builds crash, they do not show any UBSAN or ASAN report with either testcase.

            Roel Roel Van de Paar added a comment - - edited While UB+ASAN builds crash, they do not show any UBSAN or ASAN report with either testcase.
            ycp Yuchen Pei added a comment -

            An initial fix

            commit 5fc77680fa6dffc4216658bf5bc6ed63a81359a7 (HEAD -> bb-11.3-mdev-32485, upstream/bb-11.3-mdev-32485)
            Author: Yuchen Pei <ycp@mariadb.com>
            Date:   Tue Oct 17 18:42:32 2023 +1100
             
                MDEV-32486 Fix duplicating spider_bulk_malloc ID
                
                The id 38 is already used elsewhere, and 44 hasn't been used

            The problem is that apparently the second argument (id) of
            spider_bulk_malloc() at every callsite needs to be unique. This makes
            it rather dangerous to add code that calls this macro in different
            versions...

            ycp Yuchen Pei added a comment - An initial fix commit 5fc77680fa6dffc4216658bf5bc6ed63a81359a7 (HEAD -> bb-11.3-mdev-32485, upstream/bb-11.3-mdev-32485) Author: Yuchen Pei <ycp@mariadb.com> Date: Tue Oct 17 18:42:32 2023 +1100   MDEV-32486 Fix duplicating spider_bulk_malloc ID The id 38 is already used elsewhere, and 44 hasn't been used The problem is that apparently the second argument (id) of spider_bulk_malloc() at every callsite needs to be unique. This makes it rather dangerous to add code that calls this macro in different versions...
            ycp Yuchen Pei added a comment -

            Hi holyfoot, ptal thanks

            upstream/bb-11.3-mdev-32486 2ff67e4850ddba59295217899821d19e1b639283
            MDEV-32486 Fix duplicate spider_bulk_malloc ID
             
            The id 38 is already used elsewhere, we use 44 instead, which hasn't
            been used
            

            ycp Yuchen Pei added a comment - Hi holyfoot , ptal thanks upstream/bb-11.3-mdev-32486 2ff67e4850ddba59295217899821d19e1b639283 MDEV-32486 Fix duplicate spider_bulk_malloc ID   The id 38 is already used elsewhere, we use 44 instead, which hasn't been used

            ok to push.

            Well i'd prefer to have named constants for all these numbers to avoid such collisions. When we have some extra time to do that

            holyfoot Alexey Botchkov added a comment - ok to push. Well i'd prefer to have named constants for all these numbers to avoid such collisions. When we have some extra time to do that
            ycp Yuchen Pei added a comment - - edited

            Thanks for the review holyfoot. Opened MDEV-32524.

            IIUC this patch is now part of MDEV-28856 for Roel to test, in
            the branch named bb-11.3-mdev-28856-and-fixes:

            cc08a83ef42 upstream/bb-11.3-mdev-28856-and-fixes MDEV-32486 Fix duplicate spider_bulk_malloc ID

            ycp Yuchen Pei added a comment - - edited Thanks for the review holyfoot . Opened MDEV-32524 . IIUC this patch is now part of MDEV-28856 for Roel to test, in the branch named bb-11.3-mdev-28856-and-fixes: cc08a83ef42 upstream/bb-11.3-mdev-28856-and-fixes MDEV-32486 Fix duplicate spider_bulk_malloc ID

            Thank you team

            Roel Roel Van de Paar added a comment - Thank you team

            People

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