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

Assertion `length == pack_length()' failed in Field_inet6::sort_string upon INSERT into RocksDB table

    XMLWordPrintable

    Details

      Description

      INSTALL SONAME 'ha_rocksdb';
      CREATE TABLE t1 (a INET6 NOT NULL, KEY (a)) ENGINE=RocksDB;
      INSERT IGNORE INTO t1 VALUES (NULL);
      

      10.5 9894751a

      mysqld: /data/src/10.5/plugin/type_inet/sql_type_inet.cc:690: virtual void Field_inet6::sort_string(uchar*, uint): Assertion `length == pack_length()' failed.
      200227 15:59:14 [ERROR] mysqld got signal 6 ;
       
      #7  0x00007f1794ec6f12 in __GI___assert_fail (assertion=0x55d42cfee6a7 "length == pack_length()", file=0x55d42cfee4d0 "/data/src/10.5/plugin/type_inet/sql_type_inet.cc", line=690, function=0x55d42cfefd40 <Field_inet6::sort_string(unsigned char*, unsigned int)::__PRETTY_FUNCTION__> "virtual void Field_inet6::sort_string(uchar*, uint)") at assert.c:101
      #8  0x000055d42ca2379d in Field_inet6::sort_string (this=0x7f177424a3c0, to=0x7f1774008594 '\245' <repeats 52 times>, "h4z\025", '\217' <repeats 12 times>, "\305", length=39) at /data/src/10.5/plugin/type_inet/sql_type_inet.cc:690
      #9  0x00007f178aebd624 in myrocks::Rdb_key_def::pack_with_make_sort_key (fpi=0x7f177406d080, field=0x7f177424a3c0, buf=0x7f1774008890 '\245' <repeats 56 times>, "h4z\025", '\217' <repeats 12 times>, "U", dst=0x7f17900725e0, pack_ctx=0x7f1790072608) at /data/src/10.5/storage/rocksdb/rdb_datadic.cc:1497
      #10 0x00007f178aebc538 in myrocks::Rdb_key_def::pack_field (this=0x7f177406cce0, field=0x7f177424a3c0, pack_info=0x7f177406d080, tuple=0x7f1774008594 '\245' <repeats 52 times>, "h4z\025", '\217' <repeats 12 times>, "\305", packed_tuple=0x7f1774008590 "", pack_buffer=0x7f1774008890 '\245' <repeats 56 times>, "h4z\025", '\217' <repeats 12 times>, "U", unpack_info=0x7f177424ad78, n_null_fields=0x0) at /data/src/10.5/storage/rocksdb/rdb_datadic.cc:1233
      #11 0x00007f178aebccb6 in myrocks::Rdb_key_def::pack_record (this=0x7f177406cce0, tbl=0x7f1774249500, pack_buffer=0x7f1774008890 '\245' <repeats 56 times>, "h4z\025", '\217' <repeats 12 times>, "U", record=0x7f177424a380 "\377", packed_tuple=0x7f1774008590 "", unpack_info=0x7f177424ad78, should_store_row_debug_checksums=false, hidden_pk_id=1, n_key_parts=2, n_null_fields=0x0, ttl_bytes=0x7f177424c681 '\217' <repeats 15 times>, "P\307$t\027\177") at /data/src/10.5/storage/rocksdb/rdb_datadic.cc:1381
      #12 0x00007f178ae2f5d2 in myrocks::ha_rocksdb::update_write_sk (this=0x7f177424a7d8, table_arg=0x7f1774249500, kd=..., row_info=..., bulk_load_sk=false) at /data/src/10.5/storage/rocksdb/ha_rocksdb.cc:10171
      #13 0x00007f178ae2fac4 in myrocks::ha_rocksdb::update_write_indexes (this=0x7f177424a7d8, row_info=..., pk_changed=false) at /data/src/10.5/storage/rocksdb/ha_rocksdb.cc:10271
      #14 0x00007f178ae2fd80 in myrocks::ha_rocksdb::update_write_row (this=0x7f177424a7d8, old_data=0x0, new_data=0x7f177424a380 "\377", skip_unique_check=false) at /data/src/10.5/storage/rocksdb/ha_rocksdb.cc:10354
      #15 0x00007f178ae2d94f in myrocks::ha_rocksdb::write_row (this=0x7f177424a7d8, buf=0x7f177424a380 "\377") at /data/src/10.5/storage/rocksdb/ha_rocksdb.cc:9563
      #16 0x000055d42c0a794a in handler::ha_write_row (this=0x7f177424a7d8, buf=0x7f177424a380 "\377") at /data/src/10.5/sql/handler.cc:6657
      #17 0x000055d42bd019cc in write_record (thd=0x7f1774000b00, table=0x7f1774249500, info=0x7f1790072c60, sink=0x0) at /data/src/10.5/sql/sql_insert.cc:2056
      #18 0x000055d42bcfe942 in mysql_insert (thd=0x7f1774000b00, table_list=0x7f17740135a0, fields=..., values_list=..., update_fields=..., update_values=..., duplic=DUP_ERROR, ignore=true, result=0x0) at /data/src/10.5/sql/sql_insert.cc:1081
      #19 0x000055d42bd4fa83 in mysql_execute_command (thd=0x7f1774000b00) at /data/src/10.5/sql/sql_parse.cc:4505
      #20 0x000055d42bd5b99c in mysql_parse (thd=0x7f1774000b00, rawbuf=0x7f17740134a8 "INSERT IGNORE INTO t1 VALUES (NULL)", length=35, parser_state=0x7f1790073570, is_com_multi=false, is_next_command=false) at /data/src/10.5/sql/sql_parse.cc:7918
      #21 0x000055d42bd47645 in dispatch_command (command=COM_QUERY, thd=0x7f1774000b00, packet=0x7f1774157491 "INSERT IGNORE INTO t1 VALUES (NULL)", packet_length=35, is_com_multi=false, is_next_command=false) at /data/src/10.5/sql/sql_parse.cc:1845
      #22 0x000055d42bd45d8c in do_command (thd=0x7f1774000b00) at /data/src/10.5/sql/sql_parse.cc:1364
      #23 0x000055d42bee7323 in do_handle_one_connection (connect=0x55d42f6807c0, put_in_cache=true) at /data/src/10.5/sql/sql_connect.cc:1422
      #24 0x000055d42bee7052 in handle_one_connection (arg=0x55d42f6807c0) at /data/src/10.5/sql/sql_connect.cc:1319
      #25 0x000055d42c443b45 in pfs_spawn_thread (arg=0x55d42f614a50) at /data/src/10.5/storage/perfschema/pfs.cc:1869
      #26 0x00007f1796e4f4a4 in start_thread (arg=0x7f1790074700) at pthread_create.c:456
      #27 0x00007f1794f83d0f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97
      

      Not reproducible with BINARY(16) instead of INET6.
      No failure with InnoDB or MyISAM.
      No obvious problem on a non-debug build.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              varun Varun Gupta
              Reporter:
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: