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

MemorySanitizer: use-of-uninitialized-value myrocks::Rdb_key_def::pack_field

    XMLWordPrintable

Details

    • Not for Release Notes

    Description

       
      CURRENT_TEST: rocksdb.issue896
      mysqltest: At line 12: query 'INSERT INTO t1 VALUES (100, 'aaabbb', UNIX_TIMESTAMP(), 200)' failed: <Unknown> (2013): Lost connection to server during query
       
      The result from queries just before the failure was:
      CREATE TABLE `t1` (
      `a` bigint(20) NOT NULL,
      `b` varchar(10) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
      `u` bigint(20) unsigned NOT NULL,
      `d` bigint(20) DEFAULT NULL,
      PRIMARY KEY (`a`,`b`),
      KEY `d` (`d`)
      ) ENGINE=ROCKSDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='ttl_duration=1000;ttl_col=u';
      INSERT INTO t1 VALUES (100, 'aaabbb', UNIX_TIMESTAMP(), 200);
       
       
      Server [mysqld.1 - pid: 727326, winpid: 727326, exit: 256] failed during test run
      Server log from this test:
      ----------SERVER LOG START-----------
      2025-08-27  3:01:53 16 [Note] RocksDB: Manual memtable flush.
      ==727327==WARNING: MemorySanitizer: use-of-uninitialized-value
          #0 0xffffad4d12bc in myrocks::Rdb_key_def::pack_field(Field*, myrocks::Rdb_field_packing*, unsigned char*, unsigned char*, unsigned char*, myrocks::Rdb_string_writer*, unsigned int*) const /source/storage/rocksdb/rdb_datadic.cc:1247:5
          #1 0xffffad4c9ba8 in myrocks::Rdb_key_def::pack_record(TABLE const*, unsigned char*, unsigned char const*, unsigned char*, myrocks::Rdb_string_writer*, bool, long long, unsigned int, unsigned int*, char const*) const /source/storage/rocksdb/rdb_datadic.cc:1391:13
          #2 0xffffad0affe8 in myrocks::ha_rocksdb::get_pk_for_update(myrocks::ha_rocksdb::update_row_info*) /source/storage/rocksdb/ha_rocksdb.cc:9684:24
          #3 0xffffad0af064 in myrocks::ha_rocksdb::update_write_row(unsigned char const*, unsigned char const*, bool) /source/storage/rocksdb/ha_rocksdb.cc:10390:12
          #4 0xffffad0ae5fc in myrocks::ha_rocksdb::write_row(unsigned char const*) /source/storage/rocksdb/ha_rocksdb.cc:9631:18
          #5 0xaaaad5ea19c4 in handler::ha_write_row(unsigned char const*) /source/sql/handler.cc:7765:3
          #6 0xaaaad4233be4 in Write_record::single_insert(unsigned long long*) /source/sql/sql_insert.cc:2315:27
          #7 0xaaaad42227ac in Write_record::write_record() /source/sql/sql_insert.cc:2357:10
          #8 0xaaaad42139e8 in mysql_insert(THD*, TABLE_LIST*, List<Item>&, List<List<Item>>&, List<Item>&, List<Item>&, enum_duplicates, bool, select_result*) /source/sql/sql_insert.cc:1217:22
          #9 0xaaaad446b194 in mysql_execute_command(THD*, bool) /source/sql/sql_parse.cc:4628:10
          #10 0xaaaad44301ac in mysql_parse(THD*, char*, unsigned int, Parser_state*) /source/sql/sql_parse.cc:8180:18
          #11 0xaaaad4421f5c in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /source/sql/sql_parse.cc:1906:7
          #12 0xaaaad4434288 in do_command(THD*, bool) /source/sql/sql_parse.cc:1419:17
          #13 0xaaaad5052dbc in do_handle_one_connection(CONNECT*, bool) /source/sql/sql_connect.cc:1386:11
          #14 0xaaaad5051b80 in handle_one_connection /source/sql/sql_connect.cc:1298:5
          #15 0xaaaad74a51d8 in pfs_spawn_thread /source/storage/perfschema/pfs.cc:2201:3
          #16 0xffffb81aee9c  (/lib/aarch64-linux-gnu/libc.so.6+0x7ee9c) (BuildId: 16e7fc798f754633a38d91ba09be84f8aa839464)
          #17 0xffffb8217b18  (/lib/aarch64-linux-gnu/libc.so.6+0xe7b18) (BuildId: 16e7fc798f754633a38d91ba09be84f8aa839464)
       
        Uninitialized value was stored to memory at
          #0 0xffffad4d12b8 in myrocks::Rdb_key_def::pack_field(Field*, myrocks::Rdb_field_packing*, unsigned char*, unsigned char*, unsigned char*, myrocks::Rdb_string_writer*, unsigned int*) const /source/storage/rocksdb/rdb_datadic.cc:1247:53
          #1 0xffffad4c9ba8 in myrocks::Rdb_key_def::pack_record(TABLE const*, unsigned char*, unsigned char const*, unsigned char*, myrocks::Rdb_string_writer*, bool, long long, unsigned int, unsigned int*, char const*) const /source/storage/rocksdb/rdb_datadic.cc:1391:13
          #2 0xffffad0affe8 in myrocks::ha_rocksdb::get_pk_for_update(myrocks::ha_rocksdb::update_row_info*) /source/storage/rocksdb/ha_rocksdb.cc:9684:24
          #3 0xffffad0af064 in myrocks::ha_rocksdb::update_write_row(unsigned char const*, unsigned char const*, bool) /source/storage/rocksdb/ha_rocksdb.cc:10390:12
          #4 0xffffad0ae5fc in myrocks::ha_rocksdb::write_row(unsigned char const*) /source/storage/rocksdb/ha_rocksdb.cc:9631:18
          #5 0xaaaad5ea19c4 in handler::ha_write_row(unsigned char const*) /source/sql/handler.cc:7765:3
          #6 0xaaaad4233be4 in Write_record::single_insert(unsigned long long*) /source/sql/sql_insert.cc:2315:27
          #7 0xaaaad42227ac in Write_record::write_record() /source/sql/sql_insert.cc:2357:10
          #8 0xaaaad42139e8 in mysql_insert(THD*, TABLE_LIST*, List<Item>&, List<List<Item>>&, List<Item>&, List<Item>&, enum_duplicates, bool, select_result*) /source/sql/sql_insert.cc:1217:22
          #9 0xaaaad446b194 in mysql_execute_command(THD*, bool) /source/sql/sql_parse.cc:4628:10
          #10 0xaaaad44301ac in mysql_parse(THD*, char*, unsigned int, Parser_state*) /source/sql/sql_parse.cc:8180:18
          #11 0xaaaad4421f5c in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /source/sql/sql_parse.cc:1906:7
          #12 0xaaaad4434288 in do_command(THD*, bool) /source/sql/sql_parse.cc:1419:17
          #13 0xaaaad5052dbc in do_handle_one_connection(CONNECT*, bool) /source/sql/sql_connect.cc:1386:11
          #14 0xaaaad5051b80 in handle_one_connection /source/sql/sql_connect.cc:1298:5
          #15 0xaaaad74a51d8 in pfs_spawn_thread /source/storage/perfschema/pfs.cc:2201:3
          #16 0xffffb81aee9c  (/lib/aarch64-linux-gnu/libc.so.6+0x7ee9c) (BuildId: 16e7fc798f754633a38d91ba09be84f8aa839464)
          #17 0xffffb8217b18  (/lib/aarch64-linux-gnu/libc.so.6+0xe7b18) (BuildId: 16e7fc798f754633a38d91ba09be84f8aa839464)
       
        Memory was marked as uninitialized
          #0 0xaaaad392904c in __msan_allocated_memory (/build/sql/mariadbd+0x8e904c) (BuildId: 9dd701de71e83bd1f05cacbc2ecf30f2aedbfe5a)
          #1 0xaaaad92762bc in my_malloc /source/mysys/my_malloc.c:119:7
          #2 0xffffad4b411c in myrocks::Rdb_key_def::setup(TABLE const*, myrocks::Rdb_tbl_def const*) /source/storage/rocksdb/rdb_datadic.cc:459:47
          #3 0xffffad07e10c in myrocks::ha_rocksdb::create_key_def(TABLE const*, unsigned int, myrocks::Rdb_tbl_def const*, std::__1::shared_ptr<myrocks::Rdb_key_def>*, myrocks::ha_rocksdb::key_def_cf_info const&, unsigned long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&) const /source/storage/rocksdb/ha_rocksdb.cc:7589:3
          #4 0xffffad07adf0 in myrocks::ha_rocksdb::create_key_defs(TABLE const*, myrocks::Rdb_tbl_def*, TABLE const*, myrocks::Rdb_tbl_def const*) const /source/storage/rocksdb/ha_rocksdb.cc:7180:11
          #5 0xffffad087e24 in myrocks::ha_rocksdb::create_table(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&, TABLE const*, unsigned long long) /source/storage/rocksdb/ha_rocksdb.cc:7766:9
          #6 0xffffad08a53c in myrocks::ha_rocksdb::create(char const*, TABLE*, HA_CREATE_INFO*) /source/storage/rocksdb/ha_rocksdb.cc:7913:3
          #7 0xaaaad5e703c0 in handler::ha_create(char const*, TABLE*, HA_CREATE_INFO*) /source/sql/handler.cc:5644:14
          #8 0xaaaad5e7c7dc in ha_create_table(THD*, char const*, char const*, char const*, HA_CREATE_INFO*, st_mysql_const_unsigned_lex_string*, bool) /source/sql/handler.cc:6115:22
          #9 0xaaaad4b860e4 in create_table_impl(THD*, st_ddl_log_state*, st_ddl_log_state*, st_mysql_const_lex_string const&, st_mysql_const_lex_string 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*) /source/sql/sql_table.cc:4852:11
          #10 0xaaaad4b80cc4 in mysql_create_table_no_lock(THD*, st_ddl_log_state*, st_ddl_log_state*, Table_specification_st*, Alter_info*, bool*, int, TABLE_LIST*) /source/sql/sql_table.cc:4954:8
          #11 0xaaaad4c12c08 in mysql_create_table(THD*, TABLE_LIST*, Table_specification_st*, Alter_info*) /source/sql/sql_table.cc:5197:7
          #12 0xaaaad4c0a350 in Sql_cmd_create_table_like::execute(THD*) /source/sql/sql_table.cc:13144:12
          #13 0xaaaad448c6c8 in mysql_execute_command(THD*, bool) /source/sql/sql_parse.cc:6165:26
          #14 0xaaaad44301ac in mysql_parse(THD*, char*, unsigned int, Parser_state*) /source/sql/sql_parse.cc:8180:18
          #15 0xaaaad4421f5c in dispatch_command(enum_server_command, THD*, char*, unsigned int, bool) /source/sql/sql_parse.cc:1906:7
          #16 0xaaaad4434288 in do_command(THD*, bool) /source/sql/sql_parse.cc:1419:17
          #17 0xaaaad5052dbc in do_handle_one_connection(CONNECT*, bool) /source/sql/sql_connect.cc:1386:11
          #18 0xaaaad5051b80 in handle_one_connection /source/sql/sql_connect.cc:1298:5
          #19 0xaaaad74a51d8 in pfs_spawn_thread /source/storage/perfschema/pfs.cc:2201:3
       
      SUMMARY: MemorySanitizer: use-of-uninitialized-value /source/storage/rocksdb/rdb_datadic.cc:1247:5 in myrocks::Rdb_key_def::pack_field(Field*, myrocks::Rdb_field_packing*, unsigned char*, unsigned char*, unsigned char*, myrocks::Rdb_string_writer*, unsigned int*) const
      Exiting
      250827  3:01:55 [ERROR] /build/sql/mariadbd got signal 6 ;
      Sorry, we probably made a mistake, and this is a bug.
      
      

      also rocksdb.corrupted_data_reads_debug 'write_committed'

      Attachments

        Issue Links

          Activity

            People

              danblack Daniel Black
              danblack Daniel Black
              Votes:
              0 Vote for this issue
              Watchers:
              1 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.