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

SIGSEGV in ha_connect::ScanRecord on INSERT

    XMLWordPrintable

Details

    • Can result in hang or crash

    Description

      SET sql_mode='';
      INSTALL SONAME 'ha_connect';
      CREATE TABLE t (c DATE) ENGINE=Connect PARTITION BY HASH (MONTH (c)) PARTITIONS 12;
      LOCK TABLES t WRITE,t AS t_a READ;
      INSERT INTO t VALUES (1);
      INSERT INTO t VALUES (0);
      CREATE TEMPORARY TABLE t2 LIKE t;
      INSERT INTO t VALUES (1);
      

      Leads to:

      CS 12.2.0 fd15fd2765b53d0c070dd01d86fb231024b8f284 (Debug, Clang 21.1.3-20250923) Build 10/11/2025

      Core was generated by `/test/MD101125-mariadb-12.2.0-linux-x86_64-dbg/bin/mariadbd --no-defaults --max'.
      Program terminated with signal SIGSEGV, Segmentation fault.
      #0  0x00007ac640cf0fc7 in ha_connect::ScanRecord (this=0x7ac55c050ed8, g=0x7ac55c05cfe0) at /test/12.2_dbg/storage/connect/ha_connect.cc:2392
       
      [Current thread is 1 (LWP 476029)]
      (gdb) bt
      #0  0x00007ac640cf0fc7 in ha_connect::ScanRecord (this=0x7ac55c050ed8, g=0x7ac55c05cfe0) at /test/12.2_dbg/storage/connect/ha_connect.cc:2392
      #1  0x00007ac640cf5b2f in ha_connect::write_row (this=0x7ac55c050ed8, buf=0x7ac55c0522a8 <incomplete sequence \375>)at /test/12.2_dbg/storage/connect/ha_connect.cc:3694
      #2  0x00005eb54a8c99e0 in handler::ha_write_row (this=0x7ac55c050ed8, buf=0x7ac55c0522a8 <incomplete sequence \375>)at /test/12.2_dbg/sql/handler.cc:8249
      #3  0x00005eb54b1a26d8 in ha_partition::write_row (this=0x7ac55c050588, buf=0x7ac55c0522a8 <incomplete sequence \375>)at /test/12.2_dbg/sql/ha_partition.cc:4717
      #4  0x00005eb54a8c99e0 in handler::ha_write_row (this=0x7ac55c050588, buf=0x7ac55c0522a8 <incomplete sequence \375>)at /test/12.2_dbg/sql/handler.cc:8249
      #5  0x00005eb54acc6952 in Write_record::single_insert (this=0x7ac683f28f00, inserted=0x7ac683f28a30) at /test/12.2_dbg/sql/sql_insert.cc:2390
      #6  0x00005eb54acc49c3 in Write_record::write_record (this=0x7ac683f28f00)at /test/12.2_dbg/sql/sql_insert.cc:2432
      #7  0x00005eb54acc218e in mysql_insert (thd=0x7ac55c000d58, table_list=0x7ac55c019fc0, fields=@0x7ac55c006110: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x5eb54bdb3590 <end_of_list>, last = 0x7ac55c006110, elements = 0}, <No data fields>}, values_list=@0x7ac55c006158: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x7ac55c01ac90, last = 0x7ac55c01ac90, elements = 1}, <No data fields>}, update_fields=@0x7ac55c006140: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x5eb54bdb3590 <end_of_list>, last = 0x7ac55c006140, elements = 0}, <No data fields>}, update_values=@0x7ac55c006128: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x5eb54bdb3590 <end_of_list>, last = 0x7ac55c006128, elements = 0}, <No data fields>}, duplic=DUP_ERROR, ignore=false, result=0x0)at /test/12.2_dbg/sql/sql_insert.cc:1232
      #8  0x00005eb54ad25d71 in mysql_execute_command (thd=0x7ac55c000d58, is_called_from_prepared_stmt=false) at /test/12.2_dbg/sql/sql_parse.cc:4456
      #9  0x00005eb54ad1ccf8 in mysql_parse (thd=0x7ac55c000d58, rawbuf=0x7ac55c019ee0 "INSERT INTO t VALUES (1)", length=24, parser_state=0x7ac683f2aa00) at /test/12.2_dbg/sql/sql_parse.cc:7888
      #10 0x00005eb54ad1a4d9 in dispatch_command (command=COM_QUERY, thd=0x7ac55c000d58, packet=0x7ac55c00b239 "INSERT INTO t VALUES (1)", packet_length=24, blocking=true) at /test/12.2_dbg/sql/sql_parse.cc:1878
      #11 0x00005eb54ad1d77a in do_command (thd=0x7ac55c000d58, blocking=true)at /test/12.2_dbg/sql/sql_parse.cc:1417
      #12 0x00005eb54af10afe in do_handle_one_connection (connect=0x5eb54e915088, put_in_cache=true) at /test/12.2_dbg/sql/sql_connect.cc:1503
      #13 0x00005eb54af108e1 in handle_one_connection (arg=0x5eb54e854868)at /test/12.2_dbg/sql/sql_connect.cc:1415
      #14 0x00007ac68a89ca94 in start_thread (arg=<optimized out>)at ./nptl/pthread_create.c:447
      #15 0x00007ac68a929c3c in clone3 ()at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
      

      Bug Detection Matrix

          Rel    o/d  Build   Commit                                    UniqueID observed             
      CS  10.6   dbg  101125  759e3523e3d832b174cf0a612704da38b2557b40  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      CS  10.6   opt  101125  759e3523e3d832b174cf0a612704da38b2557b40  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      CS  10.11  dbg  101125  536cd151f0370216d9ba4c15f40c7037060972a5  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      CS  10.11  opt  101125  536cd151f0370216d9ba4c15f40c7037060972a5  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      CS  11.4   dbg  101125  a1bb5c94fda453baa99e57e3927eaa7cd3c8bafe  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      CS  11.4   opt  101125  a1bb5c94fda453baa99e57e3927eaa7cd3c8bafe  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      CS  11.8   dbg  101125  e0428264d0095472c015eb58c46be68ca1a320ee  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      CS  11.8   opt  101125  e0428264d0095472c015eb58c46be68ca1a320ee  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      CS  12.1   dbg  101125  ba00960fdaee67a4efff6866e31f446bf486a1c2  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      CS  12.1   opt  101125  ba00960fdaee67a4efff6866e31f446bf486a1c2  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      CS  12.2   dbg  101125  fd15fd2765b53d0c070dd01d86fb231024b8f284  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      CS  12.2   opt  101125  fd15fd2765b53d0c070dd01d86fb231024b8f284  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      ES  10.6   dbg  101125  f0d4d34fb0314b03fddb71fb9dbde372744a8c13  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      ES  10.6   opt  101125  f0d4d34fb0314b03fddb71fb9dbde372744a8c13  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      ES  11.4   dbg  101125  b81ec4b57a5ddce88b8e2b2d16b64625ffdaa0e6  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      ES  11.4   opt  101125  b81ec4b57a5ddce88b8e2b2d16b64625ffdaa0e6  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      ES  11.8   dbg  101125  db36e8fb3bcdae26dd0acdcb2b52f7f4eb014df6  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      ES  11.8   opt  101125  db36e8fb3bcdae26dd0acdcb2b52f7f4eb014df6  SIGSEGV|ha_connect::ScanRecord|ha_connect::write_row|handler::ha_write_row|ha_partition::write_row
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            Roel Roel Van de Paar
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Git Integration

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