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

Assertion `b' failed in my_strnncoll_xxxx_nopad_ci

    XMLWordPrintable

Details

    • Bug
    • Status: Open (View Workflow)
    • Critical
    • Resolution: Unresolved
    • 11.8
    • 11.8
    • Character Sets
    • None

    Description

      --source include/have_innodb.inc
       
      SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED;
      CREATE TABLE t (x TEXT, UNIQUE(x)) ENGINE=InnoDB
        CHARACTER SET utf8mb3 COLLATE utf8mb3_general_nopad_ci 
          SELECT '' AS x;
       
      DROP TABLE t;
      

      bb-11.8-release b067340c34cb9cd481cace18717f6afc66226209

      mariadbd: /data/bld/testing/bb-11.8-release/strings/strcoll.inl:231: my_strnncoll_utf8mb3_general_nopad_ci: Assertion `b' failed.
      260510 22:58:50 [ERROR] /share8t/bld/testing/bb-11.8-release/sql/mariadbd got signal 6 ;
       
      #9  0x00007fb77e853eb2 in __GI___assert_fail (assertion=0x5627fedb1940 "b", file=0x5627fedb1908 "/data/bld/testing/bb-11.8-release/strings/strcoll.inl", line=231, function=0x5627fedb5a60 <__PRETTY_FUNCTION__.46> "my_strnncoll_utf8mb3_general_nopad_ci") at ./assert/assert.c:101
      #10 0x00005627fe57ba0f in my_strnncoll_utf8mb3_general_nopad_ci (cs=0x5627ff5018a0 <my_charset_utf8mb3_general_nopad_ci>, a=0x77b7441d7920 "", a_length=0, b=0x0, b_length=0, b_is_prefix=0 '\000') at /data/bld/testing/bb-11.8-release/strings/strcoll.inl:231
      #11 0x00005627fe57bc20 in my_strnncollsp_utf8mb3_general_nopad_ci (cs=0x5627ff5018a0 <my_charset_utf8mb3_general_nopad_ci>, a=0x77b7441d7920 "", a_length=0, b=0x0, b_length=0) at /data/bld/testing/bb-11.8-release/strings/strcoll.inl:312
      #12 0x00005627fdb07970 in charset_info_st::strnncollsp (this=0x5627ff5018a0 <my_charset_utf8mb3_general_nopad_ci>, a=0x77b7441d7920 "", alen=0, b=0x0, blen=0) at /data/bld/testing/bb-11.8-release/include/m_ctype.h:1127
      #13 0x00005627fdafd801 in Field_blob::cmp (this=0x77b7441c29c0, a=0x77b7441d7920 "", a_length=0, b=0x0, b_length=0) at /data/bld/testing/bb-11.8-release/sql/field.cc:9086
      #14 0x00005627fdafd8a6 in Field_blob::cmp (this=0x77b7441c29c0, a_ptr=0x77b7441c28e1 "", b_ptr=0x77b7441c2f99 "") at /data/bld/testing/bb-11.8-release/sql/field.cc:9096
      #15 0x00005627fd8c7674 in Field::cmp_offset (this=0x77b7441c29c0, row_offset=1720) at /data/bld/testing/bb-11.8-release/sql/field.h:1354
      #16 0x00005627fdb3a47c in long_unique_fields_differ (keyinfo=0x77b7441c2bb0, other=0x77b7441c2f98 "\374") at /data/bld/testing/bb-11.8-release/sql/handler.cc:7896
      #17 0x00005627fdb3a864 in handler::check_duplicate_long_entry_key (this=0x77b7441c2088, new_rec=0x77b7441c28e0 "\374", key_no=0) at /data/bld/testing/bb-11.8-release/sql/handler.cc:7948
      #18 0x00005627fdb3ae0e in handler::ha_check_long_uniques (this=0x77b7441c2088, old_rec=0x0, new_rec=0x77b7441c28e0 "\374") at /data/bld/testing/bb-11.8-release/sql/handler.cc:8019
      #19 0x00005627fdb3ab3e in handler::ha_check_inserver_constraints (this=0x77b7441c2088, old_data=0x0, new_data=0x77b7441c28e0 "\374") at /data/bld/testing/bb-11.8-release/sql/handler.cc:7993
      #20 0x00005627fdb3c21b in handler::ha_write_row (this=0x77b7441c2088, buf=0x77b7441c28e0 "\374") at /data/bld/testing/bb-11.8-release/sql/handler.cc:8275
      #21 0x00005627fd6878b9 in Write_record::single_insert (this=0x7fb7704ec5d0, inserted=0x7fb7704ebf20) at /data/bld/testing/bb-11.8-release/sql/sql_insert.cc:2370
      #22 0x00005627fd687a8c in Write_record::write_record (this=0x7fb7704ec5d0) at /data/bld/testing/bb-11.8-release/sql/sql_insert.cc:2412
      #23 0x00005627fd68daee in select_insert::send_data (this=0x77b744019bd0, values=...) at /data/bld/testing/bb-11.8-release/sql/sql_insert.cc:4503
      #24 0x00005627fd7afc55 in select_result_sink::send_data_with_check (this=0x77b744019bd0, items=..., u=0x77b744005318, sent=0) at /data/bld/testing/bb-11.8-release/sql/sql_class.h:6368
      #25 0x00005627fd7574b2 in JOIN::exec_inner (this=0x77b744019d18) at /data/bld/testing/bb-11.8-release/sql/sql_select.cc:4983
      #26 0x00005627fd756d82 in JOIN::exec (this=0x77b744019d18) at /data/bld/testing/bb-11.8-release/sql/sql_select.cc:4900
      #27 0x00005627fd75872f in mysql_select (thd=0x77b744000dc8, tables=0x0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2201187781376, result=0x77b744019bd0, unit=0x77b744005318, select_lex=0x77b744018a20) at /data/bld/testing/bb-11.8-release/sql/sql_select.cc:5426
      #28 0x00005627fd7463c0 in handle_select (thd=0x77b744000dc8, lex=0x77b744005238, result=0x77b744019bd0, setup_tables_done_option=0) at /data/bld/testing/bb-11.8-release/sql/sql_select.cc:634
      #29 0x00005627fd834ce6 in Sql_cmd_create_table_like::execute (this=0x77b744018058, thd=0x77b744000dc8) at /data/bld/testing/bb-11.8-release/sql/sql_table.cc:13743
      #30 0x00005627fd6e5d76 in mysql_execute_command (thd=0x77b744000dc8, is_called_from_prepared_stmt=false) at /data/bld/testing/bb-11.8-release/sql/sql_parse.cc:5924
      #31 0x00005627fd6ec0b1 in mysql_parse (thd=0x77b744000dc8, rawbuf=0x77b744017f10 "CREATE TABLE t (x TEXT, UNIQUE(x)) ENGINE=InnoDB\nCHARACTER SET utf8mb3 COLLATE utf8mb3_general_nopad_ci \nSELECT '' AS x", length=119, parser_state=0x7fb7704ed2d0) at /data/bld/testing/bb-11.8-release/sql/sql_parse.cc:7953
      #32 0x00005627fd6d8153 in dispatch_command (command=COM_QUERY, thd=0x77b744000dc8, packet=0x77b74400be69 "CREATE TABLE t (x TEXT, UNIQUE(x)) ENGINE=InnoDB\nCHARACTER SET utf8mb3 COLLATE utf8mb3_general_nopad_ci \nSELECT '' AS x", packet_length=119, blocking=true) at /data/bld/testing/bb-11.8-release/sql/sql_parse.cc:1923
      #33 0x00005627fd6d6a72 in do_command (thd=0x77b744000dc8, blocking=true) at /data/bld/testing/bb-11.8-release/sql/sql_parse.cc:1431
      #34 0x00005627fd8e9e6d in do_handle_one_connection (connect=0x562838afa118, put_in_cache=true) at /data/bld/testing/bb-11.8-release/sql/sql_connect.cc:1504
      #35 0x00005627fd8e9bee in handle_one_connection (arg=0x562838af88b8) at /data/bld/testing/bb-11.8-release/sql/sql_connect.cc:1416
      #36 0x00005627fde79f58 in pfs_spawn_thread (arg=0x562838af9c88) at /data/bld/testing/bb-11.8-release/storage/perfschema/pfs.cc:2198
      #37 0x00007fb77e8a81c4 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
      #38 0x00007fb77e92885c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
      

      Reproducible with different nopad collations.
      No obvious immediate problem on a non-debug build.

      The failure started happening after this commit in 11.8 (to be 11.8.7):

      commit 7c1b02cc19883708b6111f50f8d2cd2d2c371f5c
      Author: Raghunandan Bhat
      Date:   Mon Apr 13 16:45:39 2026 +0530
       
          MDEV-35717: UBSAN: runtime error: applying zero offset to 
      

      However, this commit added the failing assertion, so I can't tell if it's a true regression, or an old problem revealed by the new assertion, or a false positive due to an overzealous assertion.

      Attachments

        Issue Links

          Activity

            People

              raghunandan.bhat Raghunandan Bhat
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              4 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.