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

Assertion `(length % 4) == 0' failed in my_lengthsp_utf32 on ALTER TABLE, SELECT and INSERT

Details

    Description

      USE test;
      SET COLLATION_CONNECTION=utf32_myanmar_ci, CHARACTER_SET_CLIENT=binary;
      CREATE TABLE t (a CHAR(1));
      ALTER TABLE t CHANGE a a ENUM('a','a') CHARACTER SET utf32;
      

      Leads to:

      10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b (Debug)

      mysqld: /test/10.5_dbg/strings/ctype-ucs2.c:2197: my_lengthsp_utf32: Assertion `(length % 4) == 0' failed.
      

      10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b (Debug)

      Core was generated by `/test/MD140720-mariadb-10.5.5-linux-x86_64-dbg/bin/mysqld --no-defaults --core-'.
      Program terminated with signal SIGABRT, Aborted.
      #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=6)
          at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
      [Current thread is 1 (Thread 0x1482c7848700 (LWP 1820126))]
      (gdb) bt
      #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
      #1  0x000055b87dda34d7 in my_write_core (sig=sig@entry=6) at /test/10.5_dbg/mysys/stacktrace.c:518
      #2  0x000055b87d55d9ba in handle_fatal_signal (sig=6) at /test/10.5_dbg/sql/signal_handler.cc:330
      #3  <signal handler called>
      #4  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
      #5  0x00001482c5ade8b1 in __GI_abort () at abort.c:79
      #6  0x00001482c5ace42a in __assert_fail_base (fmt=0x1482c5c55a38 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x55b87e488872 "(length % 4) == 0", file=file@entry=0x55b87e488800 "/test/10.5_dbg/strings/ctype-ucs2.c", line=line@entry=2197, function=function@entry=0x55b87e488db0 <__PRETTY_FUNCTION__.15905> "my_lengthsp_utf32") at assert.c:92
      #7  0x00001482c5ace4a2 in __GI___assert_fail (assertion=assertion@entry=0x55b87e488872 "(length % 4) == 0", file=file@entry=0x55b87e488800 "/test/10.5_dbg/strings/ctype-ucs2.c", line=line@entry=2197, function=function@entry=0x55b87e488db0 <__PRETTY_FUNCTION__.15905> "my_lengthsp_utf32") at assert.c:101
      #8  0x000055b87ddddc15 in my_lengthsp_utf32 (cs=<optimized out>, ptr=<optimized out>, length=<optimized out>) at /test/10.5_dbg/strings/ctype-ucs2.c:2197
      #9  0x000055b87d53e9a8 in charset_info_st::lengthsp (length=<optimized out>, str=0x1482a34749a8 "a", this=<optimized out>) at /test/10.5_dbg/include/m_ctype.h:622
      #10 Column_definition::create_interval_from_interval_list (this=this@entry=0x1482a3474a58, mem_root=mem_root@entry=0x1482a341ab50, reuse_interval_list_values=reuse_interval_list_values@entry=true) at /test/10.5_dbg/sql/field.cc:10060
      #11 0x000055b87d53ed61 in Column_definition::prepare_interval_field (this=this@entry=0x1482a3474a58, mem_root=mem_root@entry=0x1482a341ab50, reuse_interval_list_values=reuse_interval_list_values@entry=true) at /test/10.5_dbg/sql/field.cc:10117
      #12 0x000055b87d3778f2 in Column_definition::prepare_stage1_typelib (this=0x1482a3474a58, thd=0x1482a3415088, mem_root=0x1482a341ab50, file=0x1482a3474d38, table_flags=<optimized out>) at /test/10.5_dbg/sql/sql_table.cc:3232
      #13 0x000055b87d484cb8 in Type_handler_typelib::Column_definition_prepare_stage1 (this=<optimized out>, thd=<optimized out>, mem_root=<optimized out>, def=<optimized out>, file=<optimized out>, table_flags=<optimized out>) at /test/10.5_dbg/sql/sql_type.cc:2991
      #14 0x000055b87d3775ab in Column_definition::prepare_stage1 (this=this@entry=0x1482a3474a58, thd=thd@entry=0x1482a3415088, mem_root=<optimized out>, file=file@entry=0x1482a3474d38, table_flags=<optimized out>) at /test/10.5_dbg/sql/sql_table.cc:3295
      #15 0x000055b87d37e9d8 in mysql_prepare_create_table (thd=thd@entry=0x1482a3415088, create_info=create_info@entry=0x1482c7846220, alter_info=alter_info@entry=0x1482c7846150, db_options=db_options@entry=0x1482c7843828, file=file@entry=0x1482a3474d38, key_info_buffer=key_info_buffer@entry=0x1482c78441d0, key_count=0x1482c78441c8, create_table_mode=-2) at /test/10.5_dbg/sql/sql_table.cc:3635
      #16 0x000055b87d382500 in mysql_create_frm_image (thd=thd@entry=0x1482a3415088, db=@0x1482c7845640: {str = 0x1482a3474898 "test", length = 4}, table_name=@0x1482c7845650: {str = 0x1482a3474190 "t", length = 1}, create_info=create_info@entry=0x1482c7846220, alter_info=alter_info@entry=0x1482c7846150, create_table_mode=create_table_mode@entry=-2, key_info=0x1482c78441d0, key_count=0x1482c78441c8, frm=0x1482c78441e0) at /test/10.5_dbg/sql/sql_table.cc:5015
      #17 0x000055b87d382f3d in create_table_impl (thd=thd@entry=0x1482a3415088, orig_db=@0x1482c7845640: {str = 0x1482a3474898 "test", length = 4}, orig_table_name=@0x1482c7845650: {str = 0x1482a3474190 "t", length = 1}, db=@0x1482c7845670: {str = 0x1482a3474898 "test", length = 4}, table_name=@0x1482c78456a0: {str = 0x1482c78459da "#sql-alter-1bc5bd-4", length = 19}, path=path@entry=0x1482c7845e9d "./test/#sql-alter-1bc5bd-4", options={m_options = DDL_options_st::OPT_NONE}, create_info=0x1482c7846220, alter_info=0x1482c7846150, create_table_mode=-2, is_trans=0x0, key_info=0x1482c78441d0, key_count=0x1482c78441c8, frm=0x1482c78441e0) at /test/10.5_dbg/sql/sql_table.cc:5271
      #18 0x000055b87d38985b in mysql_alter_table (thd=thd@entry=0x1482a3415088, new_db=new_db@entry=0x1482a3419948, new_name=new_name@entry=0x1482a3419d50, create_info=create_info@entry=0x1482c7846220, table_list=<optimized out>, table_list@entry=0x1482a34741c8, alter_info=alter_info@entry=0x1482c7846150, order_num=0, order=0x0, ignore=false, if_exists=false) at /test/10.5_dbg/sql/sql_table.cc:10435
      #19 0x000055b87d40da6a in Sql_cmd_alter_table::execute (this=<optimized out>, thd=0x1482a3415088) at /test/10.5_dbg/sql/sql_alter.cc:532
      #20 0x000055b87d2b6e4a in mysql_execute_command (thd=thd@entry=0x1482a3415088) at /test/10.5_dbg/sql/sql_parse.cc:5951
      #21 0x000055b87d2be752 in mysql_parse (thd=thd@entry=0x1482a3415088, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x1482c7847350, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:7993
      #22 0x000055b87d2ab204 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x1482a3415088, packet=packet@entry=0x1482a3467089 "ALTER TABLE t CHANGE a a ENUM('a','a') CHARACTER SET utf32", packet_length=packet_length@entry=58, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:1866
      #23 0x000055b87d2a99de in do_command (thd=0x1482a3415088) at /test/10.5_dbg/sql/sql_parse.cc:1347
      #24 0x000055b87d405c3b in do_handle_one_connection (connect=<optimized out>, connect@entry=0x1482a68c7808, put_in_cache=put_in_cache@entry=true) at /test/10.5_dbg/sql/sql_connect.cc:1411
      #25 0x000055b87d406357 in handle_one_connection (arg=arg@entry=0x1482a68c7808) at /test/10.5_dbg/sql/sql_connect.cc:1313
      #26 0x000055b87d869ca8 in pfs_spawn_thread (arg=0x1482c4446508) at /test/10.5_dbg/storage/perfschema/pfs.cc:2201
      #27 0x00001482c67c16db in start_thread (arg=0x1482c7848700) at pthread_create.c:463
      #28 0x00001482c5bbfa3f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
      

      Bug confirmed present in:
      MariaDB: 10.1.46 (dbg), 10.2.33 (dbg), 10.3.24 (dbg), 10.4.14 (dbg), 10.5.5 (dbg)

      Bug confirmed not present in:
      MariaDB: 10.1.46 (opt), 10.2.33 (opt), 10.3.24 (opt), 10.4.14 (opt), 10.5.5 (opt)
      MySQL: 5.5.62 (dbg), 5.5.62 (opt), 5.6.47 (dbg), 5.6.47 (opt), 5.7.29 (dbg), 5.7.29 (opt), 8.0.19 (dbg), 8.0.19 (opt)

      Attachments

        Issue Links

          Activity

            Roel Roel Van de Paar created issue -
            Roel Roel Van de Paar added a comment - - edited

            Result on optimized build

            10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b (Optimized)

            10.5.5>ALTER TABLE t CHANGE a a ENUM('a','a') CHARACTER SET utf32;
            ERROR 1291 (HY000): Column 'a' has duplicated value '?' in ENUM
            

            Roel Roel Van de Paar added a comment - - edited Result on optimized build 10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b (Optimized) 10.5.5>ALTER TABLE t CHANGE a a ENUM('a','a') CHARACTER SET utf32; ERROR 1291 (HY000): Column 'a' has duplicated value '?' in ENUM
            Roel Roel Van de Paar made changes -
            Field Original Value New Value
            Description {noformat}
            USE test;
            SET COLLATION_CONNECTION=utf32_myanmar_ci, CHARACTER_SET_CLIENT=binary;
            CREATE TABLE t (a CHAR(1));
            ALTER TABLE t CHANGE a a ENUM('a','a') CHARACTER SET utf32;
            {noformat}

            Leads to:

            {noformat:title=10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b}
            mysqld: /test/10.5_dbg/strings/ctype-ucs2.c:2197: my_lengthsp_utf32: Assertion `(length % 4) == 0' failed.
            {noformat}

            {noformat:title=10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b}
            Core was generated by `/test/MD140720-mariadb-10.5.5-linux-x86_64-dbg/bin/mysqld --no-defaults --core-'.
            Program terminated with signal SIGABRT, Aborted.
            #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6)
                at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
            [Current thread is 1 (Thread 0x1482c7848700 (LWP 1820126))]
            (gdb) bt
            #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
            #1 0x000055b87dda34d7 in my_write_core (sig=sig@entry=6) at /test/10.5_dbg/mysys/stacktrace.c:518
            #2 0x000055b87d55d9ba in handle_fatal_signal (sig=6) at /test/10.5_dbg/sql/signal_handler.cc:330
            #3 <signal handler called>
            #4 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
            #5 0x00001482c5ade8b1 in __GI_abort () at abort.c:79
            #6 0x00001482c5ace42a in __assert_fail_base (fmt=0x1482c5c55a38 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x55b87e488872 "(length % 4) == 0", file=file@entry=0x55b87e488800 "/test/10.5_dbg/strings/ctype-ucs2.c", line=line@entry=2197, function=function@entry=0x55b87e488db0 <__PRETTY_FUNCTION__.15905> "my_lengthsp_utf32") at assert.c:92
            #7 0x00001482c5ace4a2 in __GI___assert_fail (assertion=assertion@entry=0x55b87e488872 "(length % 4) == 0", file=file@entry=0x55b87e488800 "/test/10.5_dbg/strings/ctype-ucs2.c", line=line@entry=2197, function=function@entry=0x55b87e488db0 <__PRETTY_FUNCTION__.15905> "my_lengthsp_utf32") at assert.c:101
            #8 0x000055b87ddddc15 in my_lengthsp_utf32 (cs=<optimized out>, ptr=<optimized out>, length=<optimized out>) at /test/10.5_dbg/strings/ctype-ucs2.c:2197
            #9 0x000055b87d53e9a8 in charset_info_st::lengthsp (length=<optimized out>, str=0x1482a34749a8 "a", this=<optimized out>) at /test/10.5_dbg/include/m_ctype.h:622
            #10 Column_definition::create_interval_from_interval_list (this=this@entry=0x1482a3474a58, mem_root=mem_root@entry=0x1482a341ab50, reuse_interval_list_values=reuse_interval_list_values@entry=true) at /test/10.5_dbg/sql/field.cc:10060
            #11 0x000055b87d53ed61 in Column_definition::prepare_interval_field (this=this@entry=0x1482a3474a58, mem_root=mem_root@entry=0x1482a341ab50, reuse_interval_list_values=reuse_interval_list_values@entry=true) at /test/10.5_dbg/sql/field.cc:10117
            #12 0x000055b87d3778f2 in Column_definition::prepare_stage1_typelib (this=0x1482a3474a58, thd=0x1482a3415088, mem_root=0x1482a341ab50, file=0x1482a3474d38, table_flags=<optimized out>) at /test/10.5_dbg/sql/sql_table.cc:3232
            #13 0x000055b87d484cb8 in Type_handler_typelib::Column_definition_prepare_stage1 (this=<optimized out>, thd=<optimized out>, mem_root=<optimized out>, def=<optimized out>, file=<optimized out>, table_flags=<optimized out>) at /test/10.5_dbg/sql/sql_type.cc:2991
            #14 0x000055b87d3775ab in Column_definition::prepare_stage1 (this=this@entry=0x1482a3474a58, thd=thd@entry=0x1482a3415088, mem_root=<optimized out>, file=file@entry=0x1482a3474d38, table_flags=<optimized out>) at /test/10.5_dbg/sql/sql_table.cc:3295
            #15 0x000055b87d37e9d8 in mysql_prepare_create_table (thd=thd@entry=0x1482a3415088, create_info=create_info@entry=0x1482c7846220, alter_info=alter_info@entry=0x1482c7846150, db_options=db_options@entry=0x1482c7843828, file=file@entry=0x1482a3474d38, key_info_buffer=key_info_buffer@entry=0x1482c78441d0, key_count=0x1482c78441c8, create_table_mode=-2) at /test/10.5_dbg/sql/sql_table.cc:3635
            #16 0x000055b87d382500 in mysql_create_frm_image (thd=thd@entry=0x1482a3415088, db=@0x1482c7845640: {str = 0x1482a3474898 "test", length = 4}, table_name=@0x1482c7845650: {str = 0x1482a3474190 "t", length = 1}, create_info=create_info@entry=0x1482c7846220, alter_info=alter_info@entry=0x1482c7846150, create_table_mode=create_table_mode@entry=-2, key_info=0x1482c78441d0, key_count=0x1482c78441c8, frm=0x1482c78441e0) at /test/10.5_dbg/sql/sql_table.cc:5015
            #17 0x000055b87d382f3d in create_table_impl (thd=thd@entry=0x1482a3415088, orig_db=@0x1482c7845640: {str = 0x1482a3474898 "test", length = 4}, orig_table_name=@0x1482c7845650: {str = 0x1482a3474190 "t", length = 1}, db=@0x1482c7845670: {str = 0x1482a3474898 "test", length = 4}, table_name=@0x1482c78456a0: {str = 0x1482c78459da "#sql-alter-1bc5bd-4", length = 19}, path=path@entry=0x1482c7845e9d "./test/#sql-alter-1bc5bd-4", options={m_options = DDL_options_st::OPT_NONE}, create_info=0x1482c7846220, alter_info=0x1482c7846150, create_table_mode=-2, is_trans=0x0, key_info=0x1482c78441d0, key_count=0x1482c78441c8, frm=0x1482c78441e0) at /test/10.5_dbg/sql/sql_table.cc:5271
            #18 0x000055b87d38985b in mysql_alter_table (thd=thd@entry=0x1482a3415088, new_db=new_db@entry=0x1482a3419948, new_name=new_name@entry=0x1482a3419d50, create_info=create_info@entry=0x1482c7846220, table_list=<optimized out>, table_list@entry=0x1482a34741c8, alter_info=alter_info@entry=0x1482c7846150, order_num=0, order=0x0, ignore=false, if_exists=false) at /test/10.5_dbg/sql/sql_table.cc:10435
            #19 0x000055b87d40da6a in Sql_cmd_alter_table::execute (this=<optimized out>, thd=0x1482a3415088) at /test/10.5_dbg/sql/sql_alter.cc:532
            #20 0x000055b87d2b6e4a in mysql_execute_command (thd=thd@entry=0x1482a3415088) at /test/10.5_dbg/sql/sql_parse.cc:5951
            #21 0x000055b87d2be752 in mysql_parse (thd=thd@entry=0x1482a3415088, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x1482c7847350, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:7993
            #22 0x000055b87d2ab204 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x1482a3415088, packet=packet@entry=0x1482a3467089 "ALTER TABLE t CHANGE a a ENUM('a','a') CHARACTER SET utf32", packet_length=packet_length@entry=58, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:1866
            #23 0x000055b87d2a99de in do_command (thd=0x1482a3415088) at /test/10.5_dbg/sql/sql_parse.cc:1347
            #24 0x000055b87d405c3b in do_handle_one_connection (connect=<optimized out>, connect@entry=0x1482a68c7808, put_in_cache=put_in_cache@entry=true) at /test/10.5_dbg/sql/sql_connect.cc:1411
            #25 0x000055b87d406357 in handle_one_connection (arg=arg@entry=0x1482a68c7808) at /test/10.5_dbg/sql/sql_connect.cc:1313
            #26 0x000055b87d869ca8 in pfs_spawn_thread (arg=0x1482c4446508) at /test/10.5_dbg/storage/perfschema/pfs.cc:2201
            #27 0x00001482c67c16db in start_thread (arg=0x1482c7848700) at pthread_create.c:463
            #28 0x00001482c5bbfa3f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            {noformat}

            Bug confirmed present in:
            MariaDB: 10.1.46 (dbg), 10.2.33 (dbg), 10.3.24 (dbg), 10.4.14 (dbg), 10.5.5 (dbg)

            Bug confirmed not present in:
            MariaDB: 10.1.46 (opt), 10.2.33 (opt), 10.3.24 (opt), 10.4.14 (opt), 10.5.5 (opt)
            MySQL: 5.5.62 (dbg), 5.5.62 (opt), 5.6.47 (dbg), 5.6.47 (opt), 5.7.29 (dbg), 5.7.29 (opt), 8.0.19 (dbg), 8.0.19 (opt)
            {noformat}
            USE test;
            SET COLLATION_CONNECTION=utf32_myanmar_ci, CHARACTER_SET_CLIENT=binary;
            CREATE TABLE t (a CHAR(1));
            ALTER TABLE t CHANGE a a ENUM('a','a') CHARACTER SET utf32;
            {noformat}

            Leads to:

            {noformat:title=10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b (Debug)}
            mysqld: /test/10.5_dbg/strings/ctype-ucs2.c:2197: my_lengthsp_utf32: Assertion `(length % 4) == 0' failed.
            {noformat}

            {noformat:title=10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b (Debug)}
            Core was generated by `/test/MD140720-mariadb-10.5.5-linux-x86_64-dbg/bin/mysqld --no-defaults --core-'.
            Program terminated with signal SIGABRT, Aborted.
            #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6)
                at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
            [Current thread is 1 (Thread 0x1482c7848700 (LWP 1820126))]
            (gdb) bt
            #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
            #1 0x000055b87dda34d7 in my_write_core (sig=sig@entry=6) at /test/10.5_dbg/mysys/stacktrace.c:518
            #2 0x000055b87d55d9ba in handle_fatal_signal (sig=6) at /test/10.5_dbg/sql/signal_handler.cc:330
            #3 <signal handler called>
            #4 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
            #5 0x00001482c5ade8b1 in __GI_abort () at abort.c:79
            #6 0x00001482c5ace42a in __assert_fail_base (fmt=0x1482c5c55a38 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x55b87e488872 "(length % 4) == 0", file=file@entry=0x55b87e488800 "/test/10.5_dbg/strings/ctype-ucs2.c", line=line@entry=2197, function=function@entry=0x55b87e488db0 <__PRETTY_FUNCTION__.15905> "my_lengthsp_utf32") at assert.c:92
            #7 0x00001482c5ace4a2 in __GI___assert_fail (assertion=assertion@entry=0x55b87e488872 "(length % 4) == 0", file=file@entry=0x55b87e488800 "/test/10.5_dbg/strings/ctype-ucs2.c", line=line@entry=2197, function=function@entry=0x55b87e488db0 <__PRETTY_FUNCTION__.15905> "my_lengthsp_utf32") at assert.c:101
            #8 0x000055b87ddddc15 in my_lengthsp_utf32 (cs=<optimized out>, ptr=<optimized out>, length=<optimized out>) at /test/10.5_dbg/strings/ctype-ucs2.c:2197
            #9 0x000055b87d53e9a8 in charset_info_st::lengthsp (length=<optimized out>, str=0x1482a34749a8 "a", this=<optimized out>) at /test/10.5_dbg/include/m_ctype.h:622
            #10 Column_definition::create_interval_from_interval_list (this=this@entry=0x1482a3474a58, mem_root=mem_root@entry=0x1482a341ab50, reuse_interval_list_values=reuse_interval_list_values@entry=true) at /test/10.5_dbg/sql/field.cc:10060
            #11 0x000055b87d53ed61 in Column_definition::prepare_interval_field (this=this@entry=0x1482a3474a58, mem_root=mem_root@entry=0x1482a341ab50, reuse_interval_list_values=reuse_interval_list_values@entry=true) at /test/10.5_dbg/sql/field.cc:10117
            #12 0x000055b87d3778f2 in Column_definition::prepare_stage1_typelib (this=0x1482a3474a58, thd=0x1482a3415088, mem_root=0x1482a341ab50, file=0x1482a3474d38, table_flags=<optimized out>) at /test/10.5_dbg/sql/sql_table.cc:3232
            #13 0x000055b87d484cb8 in Type_handler_typelib::Column_definition_prepare_stage1 (this=<optimized out>, thd=<optimized out>, mem_root=<optimized out>, def=<optimized out>, file=<optimized out>, table_flags=<optimized out>) at /test/10.5_dbg/sql/sql_type.cc:2991
            #14 0x000055b87d3775ab in Column_definition::prepare_stage1 (this=this@entry=0x1482a3474a58, thd=thd@entry=0x1482a3415088, mem_root=<optimized out>, file=file@entry=0x1482a3474d38, table_flags=<optimized out>) at /test/10.5_dbg/sql/sql_table.cc:3295
            #15 0x000055b87d37e9d8 in mysql_prepare_create_table (thd=thd@entry=0x1482a3415088, create_info=create_info@entry=0x1482c7846220, alter_info=alter_info@entry=0x1482c7846150, db_options=db_options@entry=0x1482c7843828, file=file@entry=0x1482a3474d38, key_info_buffer=key_info_buffer@entry=0x1482c78441d0, key_count=0x1482c78441c8, create_table_mode=-2) at /test/10.5_dbg/sql/sql_table.cc:3635
            #16 0x000055b87d382500 in mysql_create_frm_image (thd=thd@entry=0x1482a3415088, db=@0x1482c7845640: {str = 0x1482a3474898 "test", length = 4}, table_name=@0x1482c7845650: {str = 0x1482a3474190 "t", length = 1}, create_info=create_info@entry=0x1482c7846220, alter_info=alter_info@entry=0x1482c7846150, create_table_mode=create_table_mode@entry=-2, key_info=0x1482c78441d0, key_count=0x1482c78441c8, frm=0x1482c78441e0) at /test/10.5_dbg/sql/sql_table.cc:5015
            #17 0x000055b87d382f3d in create_table_impl (thd=thd@entry=0x1482a3415088, orig_db=@0x1482c7845640: {str = 0x1482a3474898 "test", length = 4}, orig_table_name=@0x1482c7845650: {str = 0x1482a3474190 "t", length = 1}, db=@0x1482c7845670: {str = 0x1482a3474898 "test", length = 4}, table_name=@0x1482c78456a0: {str = 0x1482c78459da "#sql-alter-1bc5bd-4", length = 19}, path=path@entry=0x1482c7845e9d "./test/#sql-alter-1bc5bd-4", options={m_options = DDL_options_st::OPT_NONE}, create_info=0x1482c7846220, alter_info=0x1482c7846150, create_table_mode=-2, is_trans=0x0, key_info=0x1482c78441d0, key_count=0x1482c78441c8, frm=0x1482c78441e0) at /test/10.5_dbg/sql/sql_table.cc:5271
            #18 0x000055b87d38985b in mysql_alter_table (thd=thd@entry=0x1482a3415088, new_db=new_db@entry=0x1482a3419948, new_name=new_name@entry=0x1482a3419d50, create_info=create_info@entry=0x1482c7846220, table_list=<optimized out>, table_list@entry=0x1482a34741c8, alter_info=alter_info@entry=0x1482c7846150, order_num=0, order=0x0, ignore=false, if_exists=false) at /test/10.5_dbg/sql/sql_table.cc:10435
            #19 0x000055b87d40da6a in Sql_cmd_alter_table::execute (this=<optimized out>, thd=0x1482a3415088) at /test/10.5_dbg/sql/sql_alter.cc:532
            #20 0x000055b87d2b6e4a in mysql_execute_command (thd=thd@entry=0x1482a3415088) at /test/10.5_dbg/sql/sql_parse.cc:5951
            #21 0x000055b87d2be752 in mysql_parse (thd=thd@entry=0x1482a3415088, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x1482c7847350, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:7993
            #22 0x000055b87d2ab204 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x1482a3415088, packet=packet@entry=0x1482a3467089 "ALTER TABLE t CHANGE a a ENUM('a','a') CHARACTER SET utf32", packet_length=packet_length@entry=58, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:1866
            #23 0x000055b87d2a99de in do_command (thd=0x1482a3415088) at /test/10.5_dbg/sql/sql_parse.cc:1347
            #24 0x000055b87d405c3b in do_handle_one_connection (connect=<optimized out>, connect@entry=0x1482a68c7808, put_in_cache=put_in_cache@entry=true) at /test/10.5_dbg/sql/sql_connect.cc:1411
            #25 0x000055b87d406357 in handle_one_connection (arg=arg@entry=0x1482a68c7808) at /test/10.5_dbg/sql/sql_connect.cc:1313
            #26 0x000055b87d869ca8 in pfs_spawn_thread (arg=0x1482c4446508) at /test/10.5_dbg/storage/perfschema/pfs.cc:2201
            #27 0x00001482c67c16db in start_thread (arg=0x1482c7848700) at pthread_create.c:463
            #28 0x00001482c5bbfa3f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            {noformat}

            Bug confirmed present in:
            MariaDB: 10.1.46 (dbg), 10.2.33 (dbg), 10.3.24 (dbg), 10.4.14 (dbg), 10.5.5 (dbg)

            Bug confirmed not present in:
            MariaDB: 10.1.46 (opt), 10.2.33 (opt), 10.3.24 (opt), 10.4.14 (opt), 10.5.5 (opt)
            MySQL: 5.5.62 (dbg), 5.5.62 (opt), 5.6.47 (dbg), 5.6.47 (opt), 5.7.29 (dbg), 5.7.29 (opt), 8.0.19 (dbg), 8.0.19 (opt)
            elenst Elena Stepanova made changes -
            Roel Roel Van de Paar made changes -
            Labels regression

            There also seems to be a new regression in 10.4/10.5:

            USE test;
            SET SQL_MODE='';
            SET MAX_SORT_LENGTH=29;
            SET COLLATION_CONNECTION=utf32_unicode_ci;
            CREATE TEMPORARY TABLE t1 (a INT);
            INSERT INTO t1 VALUES (_ucs2 0x00fd),(_ucs2 0x00dd);
            SELECT * FROM t1 ORDER BY (oct(a));
            

            Leads to:

            10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b (Debug)

            mysqld: /test/10.5_dbg/strings/ctype-ucs2.c:2197: my_lengthsp_utf32: Assertion `(length % 4) == 0' failed.
            

            10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b (Debug)

            Core was generated by `/test/MD140720-mariadb-10.5.5-linux-x86_64-dbg/bin/mysqld --no-defaults --core-'.
            Program terminated with signal SIGABRT, Aborted.
            #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=6)
                at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
            [Current thread is 1 (Thread 0x14611f4e7700 (LWP 2970259))]
            (gdb) bt
            #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
            #1  0x000055e0a89ac4d7 in my_write_core (sig=sig@entry=6) at /test/10.5_dbg/mysys/stacktrace.c:518
            #2  0x000055e0a81669ba in handle_fatal_signal (sig=6) at /test/10.5_dbg/sql/signal_handler.cc:330
            #3  <signal handler called>
            #4  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
            #5  0x000014611d77d8b1 in __GI_abort () at abort.c:79
            #6  0x000014611d76d42a in __assert_fail_base (fmt=0x14611d8f4a38 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x55e0a9091872 "(length % 4) == 0", file=file@entry=0x55e0a9091800 "/test/10.5_dbg/strings/ctype-ucs2.c", line=line@entry=2197, function=function@entry=0x55e0a9091db0 <__PRETTY_FUNCTION__.15905> "my_lengthsp_utf32") at assert.c:92
            #7  0x000014611d76d4a2 in __GI___assert_fail (assertion=assertion@entry=0x55e0a9091872 "(length % 4) == 0", file=file@entry=0x55e0a9091800 "/test/10.5_dbg/strings/ctype-ucs2.c", line=line@entry=2197, function=function@entry=0x55e0a9091db0 <__PRETTY_FUNCTION__.15905> "my_lengthsp_utf32") at assert.c:101
            #8  0x000055e0a89e6c15 in my_lengthsp_utf32 (cs=<optimized out>, ptr=<optimized out>, length=<optimized out>) at /test/10.5_dbg/strings/ctype-ucs2.c:2197
            #9  0x000055e0a89e12f4 in my_ci_lengthsp (length=<optimized out>, str=0x1460fac715c8 "0", cs=0x55e0a96ace00 <my_charset_utf32_unicode_ci>) at /test/10.5_dbg/include/m_ctype.h:889
            #10 my_uca_strnxfrm_utf32 (cs=0x55e0a96ace00 <my_charset_utf32_unicode_ci>, dst=0x1460facb2089 '\245' <repeats 200 times>..., dstlen=<optimized out>, nweights=512, src=0x1460fac715c8 "0", srclen=<optimized out>, flags=192) at /test/10.5_dbg/strings/ctype-uca.ic:674
            #11 0x000055e0a815f497 in charset_info_st::strnxfrm (flags=192, srclen=<optimized out>, src=<optimized out>, nweights=<optimized out>, dstlen=<optimized out>, dst=0x1460facb2089 '\245' <repeats 200 times>..., this=0x55e0a96ace00 <my_charset_utf32_unicode_ci>) at /test/10.5_dbg/include/m_ctype.h:802
            #12 Type_handler_string_result::make_sort_key_part (this=<optimized out>, to=<optimized out>, item=0x1460fac758e8, sort_field=0x1460fac781f8, param=<optimized out>) at /test/10.5_dbg/sql/filesort.cc:1137
            #13 0x000055e0a81615cf in make_sortkey (to=0x1460facb2088 "\001", '\245' <repeats 199 times>..., param=0x14611f4e4b40) at /test/10.5_dbg/sql/filesort.cc:2995
            #14 make_sortkey (param=param@entry=0x14611f4e4b40, to=0x1460facb2088 "\001", '\245' <repeats 199 times>..., ref_pos=ref_pos@entry=0x1460fac52bc0 "", using_packed_sortkeys=using_packed_sortkeys@entry=false) at /test/10.5_dbg/sql/filesort.cc:1337
            #15 0x000055e0a8164a96 in find_all_keys (found_rows=0x1460facaa3f0, pq=0x0, tempfile=0x14611f4e4bf0, buffpek_pointers=0x14611f4e4d60, fs_info=0x1460facaa200, select=0x1460fac778a8, param=0x14611f4e4b40, thd=0x1460fac15088) at /test/10.5_dbg/sql/filesort.cc:956
            #16 filesort (thd=thd@entry=0x1460fac15088, table=table@entry=0x1460fac52088, filesort=filesort@entry=0x1460fac77a78, tracker=0x1460fac78168, join=join@entry=0x1460fac75b68, first_table_bit=<optimized out>) at /test/10.5_dbg/sql/filesort.cc:351
            #17 0x000055e0a7f115a8 in create_sort_index (thd=0x1460fac15088, join=0x1460fac75b68, tab=tab@entry=0x1460fac76f68, fsort=0x1460fac77a78, fsort@entry=0x0) at /test/10.5_dbg/sql/sql_select.cc:23875
            #18 0x000055e0a7f118d6 in st_join_table::sort_table (this=this@entry=0x1460fac76f68) at /test/10.5_dbg/sql/sql_select.cc:21625
            #19 0x000055e0a7f11a0a in join_init_read_record (tab=0x1460fac76f68) at /test/10.5_dbg/sql/sql_select.cc:21564
            #20 0x000055e0a7f0012b in sub_select (join=0x1460fac75b68, join_tab=0x1460fac76f68, end_of_records=<optimized out>) at /test/10.5_dbg/sql/sql_select.cc:20638
            #21 0x000055e0a7f3a2e2 in do_select (procedure=0x0, join=0x1460fac75b68) at /test/10.5_dbg/sql/sql_select.cc:20175
            #22 JOIN::exec_inner (this=this@entry=0x1460fac75b68) at /test/10.5_dbg/sql/sql_select.cc:4450
            #23 0x000055e0a7f3a8fd in JOIN::exec (this=this@entry=0x1460fac75b68) at /test/10.5_dbg/sql/sql_select.cc:4231
            #24 0x000055e0a7f38bf9 in mysql_select (thd=thd@entry=0x1460fac15088, tables=<optimized out>, fields=@0x1460fac742a0: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x1460fac74700, last = 0x1460fac74700, elements = 1}, <No data fields>}, conds=0x0, og_num=1, order=<optimized out>, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x1460fac75b40, unit=0x1460fac190a0, select_lex=0x1460fac74150) at /test/10.5_dbg/sql/sql_select.cc:4655
            #25 0x000055e0a7f38f28 in handle_select (thd=thd@entry=0x1460fac15088, lex=lex@entry=0x1460fac18fd8, result=result@entry=0x1460fac75b40, setup_tables_done_option=setup_tables_done_option@entry=0) at /test/10.5_dbg/sql/sql_select.cc:417
            #26 0x000055e0a7ec17e2 in execute_sqlcom_select (thd=thd@entry=0x1460fac15088, all_tables=0x1460fac74748) at /test/10.5_dbg/sql/sql_parse.cc:6209
            #27 0x000055e0a7eba8b6 in mysql_execute_command (thd=thd@entry=0x1460fac15088) at /test/10.5_dbg/sql/sql_parse.cc:3931
            #28 0x000055e0a7ec7752 in mysql_parse (thd=thd@entry=0x1460fac15088, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14611f4e6350, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:7993
            #29 0x000055e0a7eb4204 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x1460fac15088, packet=packet@entry=0x1460fac67089 "", packet_length=packet_length@entry=34, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:1866
            #30 0x000055e0a7eb29de in do_command (thd=0x1460fac15088) at /test/10.5_dbg/sql/sql_parse.cc:1347
            #31 0x000055e0a800ec3b in do_handle_one_connection (connect=<optimized out>, connect@entry=0x1460fe4c7028, put_in_cache=put_in_cache@entry=true) at /test/10.5_dbg/sql/sql_connect.cc:1411
            #32 0x000055e0a800f357 in handle_one_connection (arg=arg@entry=0x1460fe4c7028) at /test/10.5_dbg/sql/sql_connect.cc:1313
            #33 0x000055e0a8472ca8 in pfs_spawn_thread (arg=0x14611c046508) at /test/10.5_dbg/storage/perfschema/pfs.cc:2201
            #34 0x000014611e4606db in start_thread (arg=0x14611f4e7700) at pthread_create.c:463
            #35 0x000014611d85ea3f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            

            Bug confirmed present in:
            MariaDB: 10.4.14 (dbg), 10.5.5 (dbg)

            Bug confirmed not present in:
            MariaDB: 10.1.46 (dbg), 10.1.46 (opt), 10.2.33 (dbg), 10.2.33 (opt), 10.3.24 (dbg), 10.3.24 (opt), 10.4.14 (opt), 10.5.5 (opt)
            MySQL: 5.5.62 (dbg), 5.5.62 (opt), 5.6.47 (dbg), 5.6.47 (opt), 5.7.29 (dbg), 5.7.29 (opt), 8.0.19 (dbg), 8.0.19 (opt)

            Roel Roel Van de Paar added a comment - There also seems to be a new regression in 10.4/10.5: USE test; SET SQL_MODE=''; SET MAX_SORT_LENGTH=29; SET COLLATION_CONNECTION=utf32_unicode_ci; CREATE TEMPORARY TABLE t1 (a INT); INSERT INTO t1 VALUES (_ucs2 0x00fd),(_ucs2 0x00dd); SELECT * FROM t1 ORDER BY (oct(a)); Leads to: 10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b (Debug) mysqld: /test/10.5_dbg/strings/ctype-ucs2.c:2197: my_lengthsp_utf32: Assertion `(length % 4) == 0' failed. 10.5.5 30e7a0a866dce530d8328c6d614e48d39a264f9b (Debug) Core was generated by `/test/MD140720-mariadb-10.5.5-linux-x86_64-dbg/bin/mysqld --no-defaults --core-'. Program terminated with signal SIGABRT, Aborted. #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:57 [Current thread is 1 (Thread 0x14611f4e7700 (LWP 2970259))] (gdb) bt #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:57 #1 0x000055e0a89ac4d7 in my_write_core (sig=sig@entry=6) at /test/10.5_dbg/mysys/stacktrace.c:518 #2 0x000055e0a81669ba in handle_fatal_signal (sig=6) at /test/10.5_dbg/sql/signal_handler.cc:330 #3 <signal handler called> #4 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 #5 0x000014611d77d8b1 in __GI_abort () at abort.c:79 #6 0x000014611d76d42a in __assert_fail_base (fmt=0x14611d8f4a38 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x55e0a9091872 "(length % 4) == 0", file=file@entry=0x55e0a9091800 "/test/10.5_dbg/strings/ctype-ucs2.c", line=line@entry=2197, function=function@entry=0x55e0a9091db0 <__PRETTY_FUNCTION__.15905> "my_lengthsp_utf32") at assert.c:92 #7 0x000014611d76d4a2 in __GI___assert_fail (assertion=assertion@entry=0x55e0a9091872 "(length % 4) == 0", file=file@entry=0x55e0a9091800 "/test/10.5_dbg/strings/ctype-ucs2.c", line=line@entry=2197, function=function@entry=0x55e0a9091db0 <__PRETTY_FUNCTION__.15905> "my_lengthsp_utf32") at assert.c:101 #8 0x000055e0a89e6c15 in my_lengthsp_utf32 (cs=<optimized out>, ptr=<optimized out>, length=<optimized out>) at /test/10.5_dbg/strings/ctype-ucs2.c:2197 #9 0x000055e0a89e12f4 in my_ci_lengthsp (length=<optimized out>, str=0x1460fac715c8 "0", cs=0x55e0a96ace00 <my_charset_utf32_unicode_ci>) at /test/10.5_dbg/include/m_ctype.h:889 #10 my_uca_strnxfrm_utf32 (cs=0x55e0a96ace00 <my_charset_utf32_unicode_ci>, dst=0x1460facb2089 '\245' <repeats 200 times>..., dstlen=<optimized out>, nweights=512, src=0x1460fac715c8 "0", srclen=<optimized out>, flags=192) at /test/10.5_dbg/strings/ctype-uca.ic:674 #11 0x000055e0a815f497 in charset_info_st::strnxfrm (flags=192, srclen=<optimized out>, src=<optimized out>, nweights=<optimized out>, dstlen=<optimized out>, dst=0x1460facb2089 '\245' <repeats 200 times>..., this=0x55e0a96ace00 <my_charset_utf32_unicode_ci>) at /test/10.5_dbg/include/m_ctype.h:802 #12 Type_handler_string_result::make_sort_key_part (this=<optimized out>, to=<optimized out>, item=0x1460fac758e8, sort_field=0x1460fac781f8, param=<optimized out>) at /test/10.5_dbg/sql/filesort.cc:1137 #13 0x000055e0a81615cf in make_sortkey (to=0x1460facb2088 "\001", '\245' <repeats 199 times>..., param=0x14611f4e4b40) at /test/10.5_dbg/sql/filesort.cc:2995 #14 make_sortkey (param=param@entry=0x14611f4e4b40, to=0x1460facb2088 "\001", '\245' <repeats 199 times>..., ref_pos=ref_pos@entry=0x1460fac52bc0 "", using_packed_sortkeys=using_packed_sortkeys@entry=false) at /test/10.5_dbg/sql/filesort.cc:1337 #15 0x000055e0a8164a96 in find_all_keys (found_rows=0x1460facaa3f0, pq=0x0, tempfile=0x14611f4e4bf0, buffpek_pointers=0x14611f4e4d60, fs_info=0x1460facaa200, select=0x1460fac778a8, param=0x14611f4e4b40, thd=0x1460fac15088) at /test/10.5_dbg/sql/filesort.cc:956 #16 filesort (thd=thd@entry=0x1460fac15088, table=table@entry=0x1460fac52088, filesort=filesort@entry=0x1460fac77a78, tracker=0x1460fac78168, join=join@entry=0x1460fac75b68, first_table_bit=<optimized out>) at /test/10.5_dbg/sql/filesort.cc:351 #17 0x000055e0a7f115a8 in create_sort_index (thd=0x1460fac15088, join=0x1460fac75b68, tab=tab@entry=0x1460fac76f68, fsort=0x1460fac77a78, fsort@entry=0x0) at /test/10.5_dbg/sql/sql_select.cc:23875 #18 0x000055e0a7f118d6 in st_join_table::sort_table (this=this@entry=0x1460fac76f68) at /test/10.5_dbg/sql/sql_select.cc:21625 #19 0x000055e0a7f11a0a in join_init_read_record (tab=0x1460fac76f68) at /test/10.5_dbg/sql/sql_select.cc:21564 #20 0x000055e0a7f0012b in sub_select (join=0x1460fac75b68, join_tab=0x1460fac76f68, end_of_records=<optimized out>) at /test/10.5_dbg/sql/sql_select.cc:20638 #21 0x000055e0a7f3a2e2 in do_select (procedure=0x0, join=0x1460fac75b68) at /test/10.5_dbg/sql/sql_select.cc:20175 #22 JOIN::exec_inner (this=this@entry=0x1460fac75b68) at /test/10.5_dbg/sql/sql_select.cc:4450 #23 0x000055e0a7f3a8fd in JOIN::exec (this=this@entry=0x1460fac75b68) at /test/10.5_dbg/sql/sql_select.cc:4231 #24 0x000055e0a7f38bf9 in mysql_select (thd=thd@entry=0x1460fac15088, tables=<optimized out>, fields=@0x1460fac742a0: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x1460fac74700, last = 0x1460fac74700, elements = 1}, <No data fields>}, conds=0x0, og_num=1, order=<optimized out>, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x1460fac75b40, unit=0x1460fac190a0, select_lex=0x1460fac74150) at /test/10.5_dbg/sql/sql_select.cc:4655 #25 0x000055e0a7f38f28 in handle_select (thd=thd@entry=0x1460fac15088, lex=lex@entry=0x1460fac18fd8, result=result@entry=0x1460fac75b40, setup_tables_done_option=setup_tables_done_option@entry=0) at /test/10.5_dbg/sql/sql_select.cc:417 #26 0x000055e0a7ec17e2 in execute_sqlcom_select (thd=thd@entry=0x1460fac15088, all_tables=0x1460fac74748) at /test/10.5_dbg/sql/sql_parse.cc:6209 #27 0x000055e0a7eba8b6 in mysql_execute_command (thd=thd@entry=0x1460fac15088) at /test/10.5_dbg/sql/sql_parse.cc:3931 #28 0x000055e0a7ec7752 in mysql_parse (thd=thd@entry=0x1460fac15088, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14611f4e6350, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:7993 #29 0x000055e0a7eb4204 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x1460fac15088, packet=packet@entry=0x1460fac67089 "", packet_length=packet_length@entry=34, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.5_dbg/sql/sql_parse.cc:1866 #30 0x000055e0a7eb29de in do_command (thd=0x1460fac15088) at /test/10.5_dbg/sql/sql_parse.cc:1347 #31 0x000055e0a800ec3b in do_handle_one_connection (connect=<optimized out>, connect@entry=0x1460fe4c7028, put_in_cache=put_in_cache@entry=true) at /test/10.5_dbg/sql/sql_connect.cc:1411 #32 0x000055e0a800f357 in handle_one_connection (arg=arg@entry=0x1460fe4c7028) at /test/10.5_dbg/sql/sql_connect.cc:1313 #33 0x000055e0a8472ca8 in pfs_spawn_thread (arg=0x14611c046508) at /test/10.5_dbg/storage/perfschema/pfs.cc:2201 #34 0x000014611e4606db in start_thread (arg=0x14611f4e7700) at pthread_create.c:463 #35 0x000014611d85ea3f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Bug confirmed present in: MariaDB: 10.4.14 (dbg), 10.5.5 (dbg) Bug confirmed not present in: MariaDB: 10.1.46 (dbg), 10.1.46 (opt), 10.2.33 (dbg), 10.2.33 (opt), 10.3.24 (dbg), 10.3.24 (opt), 10.4.14 (opt), 10.5.5 (opt) MySQL: 5.5.62 (dbg), 5.5.62 (opt), 5.6.47 (dbg), 5.6.47 (opt), 5.7.29 (dbg), 5.7.29 (opt), 8.0.19 (dbg), 8.0.19 (opt)
            Roel Roel Van de Paar made changes -
            Summary Assertion `(length % 4) == 0' failed in my_lengthsp_utf32 on ALTER TABLE Assertion `(length % 4) == 0' failed in my_lengthsp_utf32 on ALTER TABLE and SELECT
            Roel Roel Van de Paar added a comment - - edited

            Unique ID's

            (length % 4) == 0|SIGABRT|my_lengthsp_utf32|charset_info_st::lengthsp|Column_definition::create_interval_from_interval_list|Column_definition::prepare_interval_field  # Original testcase
            (length % 4) == 0|SIGABRT|my_lengthsp_utf32|my_ci_lengthsp|my_uca_strnxfrm_utf32|charset_info_st::strnxfrm  # Secondary testcase
            (length % 4) == 0|SIGABRT|my_lengthsp_utf32|my_uca_strnxfrm_utf32|Type_handler_string_result::make_sort_key|make_sortkey  # Testcase in comment after this comment
            

            Roel Roel Van de Paar added a comment - - edited Unique ID's (length % 4) == 0|SIGABRT|my_lengthsp_utf32|charset_info_st::lengthsp|Column_definition::create_interval_from_interval_list|Column_definition::prepare_interval_field # Original testcase (length % 4) == 0|SIGABRT|my_lengthsp_utf32|my_ci_lengthsp|my_uca_strnxfrm_utf32|charset_info_st::strnxfrm # Secondary testcase (length % 4) == 0|SIGABRT|my_lengthsp_utf32|my_uca_strnxfrm_utf32|Type_handler_string_result::make_sort_key|make_sortkey # Testcase in comment after this comment
            Roel Roel Van de Paar made changes -
            Labels regression affects-tests regression

            USE test;
            SET COLLATION_CONNECTION=utf32_czech_ci;
            CREATE TABLE t (a INT);
            INSERT INTO t VALUES (1);
            SELECT 1 FROM t ORDER BY @x:=makedate(a,a);
            

            Leads to:

            10.4.15 eae968f62d285de97ed607c87bc131cd863d5d03 (Debug)

            mysqld: /test/10.4_dbg/strings/ctype-ucs2.c:2195: my_lengthsp_utf32: Assertion `(length % 4) == 0' failed.
            

            10.4.15 eae968f62d285de97ed607c87bc131cd863d5d03 (Debug)

            Core was generated by `/test/MD110820-mariadb-10.4.15-linux-x86_64-dbg/bin/mysqld --no-defaults --core'.
            Program terminated with signal SIGABRT, Aborted.
            #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=6)
                at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
            [Current thread is 1 (Thread 0x14d314f6e700 (LWP 1387271))]
            (gdb) bt
            #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:57
            #1  0x0000562c0aedf8a6 in my_write_core (sig=sig@entry=6) at /test/10.4_dbg/mysys/stacktrace.c:482
            #2  0x0000562c0a65bcdc in handle_fatal_signal (sig=6) at /test/10.4_dbg/sql/signal_handler.cc:343
            #3  <signal handler called>
            #4  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
            #5  0x000014d3132058b1 in __GI_abort () at abort.c:79
            #6  0x000014d3131f542a in __assert_fail_base (fmt=0x14d31337ca38 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x562c0b4f1d52 "(length % 4) == 0", file=file@entry=0x562c0b4f1ce0 "/test/10.4_dbg/strings/ctype-ucs2.c", line=line@entry=2195, function=function@entry=0x562c0b4f2290 <__PRETTY_FUNCTION__.15414> "my_lengthsp_utf32") at assert.c:92
            #7  0x000014d3131f54a2 in __GI___assert_fail (assertion=assertion@entry=0x562c0b4f1d52 "(length % 4) == 0", file=file@entry=0x562c0b4f1ce0 "/test/10.4_dbg/strings/ctype-ucs2.c", line=line@entry=2195, function=function@entry=0x562c0b4f2290 <__PRETTY_FUNCTION__.15414> "my_lengthsp_utf32") at assert.c:101
            #8  0x0000562c0af22845 in my_lengthsp_utf32 (cs=<optimized out>, ptr=<optimized out>, length=<optimized out>) at /test/10.4_dbg/strings/ctype-ucs2.c:2195
            #9  0x0000562c0af1cf24 in my_uca_strnxfrm_utf32 (cs=0x562c0bada340 <my_charset_utf32_czech_uca_ci>, dst=0x14d2ed5513b9 '\245' <repeats 200 times>..., dstlen=<optimized out>, nweights=80, src=0x14d2ed5046b0 "2001-01-01", srclen=<optimized out>, flags=192) at /test/10.4_dbg/strings/ctype-uca.ic:674
            #10 0x0000562c0a656e42 in Type_handler_string_result::make_sort_key (this=<optimized out>, to=0x14d2ed5513b9 '\245' <repeats 200 times>..., item=0x14d2ed46e8b0, sort_field=0x14d2ed4710a0, param=<optimized out>) at /test/10.4_dbg/sql/filesort.cc:1013
            #11 0x0000562c0a6561ba in make_sortkey (param=param@entry=0x14d314f6a270, to=0x14d2ed5513b8 "\001", '\245' <repeats 199 times>..., ref_pos=ref_pos@entry=0x14d2ed441ca8 "") at /test/10.4_dbg/sql/filesort.cc:1198
            #12 0x0000562c0a65a805 in find_all_keys (found_rows=0x14d2ed4eb5e0, pq=0x0, tempfile=0x14d314f6a300, buffpek_pointers=0x14d314f6a470, fs_info=0x14d2ed4eb400, select=0x14d2ed470790, param=0x14d314f6a270, thd=0x14d2ed415070) at /test/10.4_dbg/sql/filesort.cc:836
            #13 filesort (thd=thd@entry=0x14d2ed415070, table=table@entry=0x14d2ed509070, filesort=filesort@entry=0x14d2ed470960, tracker=0x14d2ed471020, join=join@entry=0x14d2ed46ebc0, first_table_bit=<optimized out>) at /test/10.4_dbg/sql/filesort.cc:263
            #14 0x0000562c0a409423 in create_sort_index (thd=0x14d2ed415070, join=0x14d2ed46ebc0, tab=tab@entry=0x14d2ed46fe50, fsort=0x14d2ed470960, fsort@entry=0x0) at /test/10.4_dbg/sql/sql_select.cc:23637
            #15 0x0000562c0a40974a in st_join_table::sort_table (this=this@entry=0x14d2ed46fe50) at /test/10.4_dbg/sql/sql_select.cc:21381
            #16 0x0000562c0a40987e in join_init_read_record (tab=0x14d2ed46fe50) at /test/10.4_dbg/sql/sql_select.cc:21320
            #17 0x0000562c0a3f3eeb in sub_select (join=0x14d2ed46ebc0, join_tab=0x14d2ed46fe50, end_of_records=<optimized out>) at /test/10.4_dbg/sql/sql_select.cc:20397
            #18 0x0000562c0a425a70 in do_select (procedure=0x0, join=0x14d2ed46ebc0) at /test/10.4_dbg/sql/sql_select.cc:19938
            #19 JOIN::exec_inner (this=this@entry=0x14d2ed46ebc0) at /test/10.4_dbg/sql/sql_select.cc:4473
            #20 0x0000562c0a42604d in JOIN::exec (this=this@entry=0x14d2ed46ebc0) at /test/10.4_dbg/sql/sql_select.cc:4255
            #21 0x0000562c0a4243f3 in mysql_select (thd=thd@entry=0x14d2ed415070, tables=<optimized out>, wild_num=0, fields=@0x14d2ed46d290: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14d2ed46d648, last = 0x14d2ed46d648, elements = 1}, <No data fields>}, conds=0x0, og_num=<optimized out>, order=0x14d2ed46ea40, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x14d2ed46eb98, unit=0x14d2ed418f98, select_lex=0x14d2ed46d148) at /test/10.4_dbg/sql/sql_select.cc:4687
            #22 0x0000562c0a42471e in handle_select (thd=thd@entry=0x14d2ed415070, lex=lex@entry=0x14d2ed418ed8, result=result@entry=0x14d2ed46eb98, setup_tables_done_option=setup_tables_done_option@entry=0) at /test/10.4_dbg/sql/sql_select.cc:410
            #23 0x0000562c0a39d3c6 in execute_sqlcom_select (thd=thd@entry=0x14d2ed415070, all_tables=0x14d2ed46d690) at /test/10.4_dbg/sql/sql_parse.cc:6355
            #24 0x0000562c0a3a879a in mysql_execute_command (thd=thd@entry=0x14d2ed415070) at /test/10.4_dbg/sql/sql_parse.cc:3889
            #25 0x0000562c0a3b3090 in mysql_parse (thd=thd@entry=0x14d2ed415070, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14d314f6d460, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.4_dbg/sql/sql_parse.cc:7896
            #26 0x0000562c0a3b5920 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x14d2ed415070, packet=packet@entry=0x14d2ed457071 "", packet_length=packet_length@entry=42, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.4_dbg/sql/sql_parse.cc:1834
            #27 0x0000562c0a3b935b in do_command (thd=0x14d2ed415070) at /test/10.4_dbg/sql/sql_parse.cc:1352
            #28 0x0000562c0a4e58b6 in do_handle_one_connection (connect=connect@entry=0x14d311c35790) at /test/10.4_dbg/sql/sql_connect.cc:1412
            #29 0x0000562c0a4e59d6 in handle_one_connection (arg=0x14d311c35790) at /test/10.4_dbg/sql/sql_connect.cc:1316
            #30 0x000014d31416c6db in start_thread (arg=0x14d314f6e700) at pthread_create.c:463
            #31 0x000014d3132e6a3f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            

            Bug confirmed present in:
            MariaDB: 10.4.15 (dbg)

            Bug confirmed not present in:
            MariaDB: 10.1.47 (dbg), 10.1.47 (opt), 10.2.34 (dbg), 10.2.34 (opt), 10.3.25 (dbg), 10.3.25 (opt), 10.4.15 (opt), 10.5.6 (dbg), 10.5.6 (opt)
            MySQL: 5.5.62 (dbg), 5.5.62 (opt), 5.6.47 (dbg), 5.6.47 (opt), 5.7.29 (dbg), 5.7.29 (opt), 8.0.19 (dbg), 8.0.19 (opt)

            Roel Roel Van de Paar added a comment - USE test; SET COLLATION_CONNECTION=utf32_czech_ci; CREATE TABLE t (a INT); INSERT INTO t VALUES (1); SELECT 1 FROM t ORDER BY @x:=makedate(a,a); Leads to: 10.4.15 eae968f62d285de97ed607c87bc131cd863d5d03 (Debug) mysqld: /test/10.4_dbg/strings/ctype-ucs2.c:2195: my_lengthsp_utf32: Assertion `(length % 4) == 0' failed. 10.4.15 eae968f62d285de97ed607c87bc131cd863d5d03 (Debug) Core was generated by `/test/MD110820-mariadb-10.4.15-linux-x86_64-dbg/bin/mysqld --no-defaults --core'. Program terminated with signal SIGABRT, Aborted. #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:57 [Current thread is 1 (Thread 0x14d314f6e700 (LWP 1387271))] (gdb) bt #0 __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:57 #1 0x0000562c0aedf8a6 in my_write_core (sig=sig@entry=6) at /test/10.4_dbg/mysys/stacktrace.c:482 #2 0x0000562c0a65bcdc in handle_fatal_signal (sig=6) at /test/10.4_dbg/sql/signal_handler.cc:343 #3 <signal handler called> #4 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 #5 0x000014d3132058b1 in __GI_abort () at abort.c:79 #6 0x000014d3131f542a in __assert_fail_base (fmt=0x14d31337ca38 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=assertion@entry=0x562c0b4f1d52 "(length % 4) == 0", file=file@entry=0x562c0b4f1ce0 "/test/10.4_dbg/strings/ctype-ucs2.c", line=line@entry=2195, function=function@entry=0x562c0b4f2290 <__PRETTY_FUNCTION__.15414> "my_lengthsp_utf32") at assert.c:92 #7 0x000014d3131f54a2 in __GI___assert_fail (assertion=assertion@entry=0x562c0b4f1d52 "(length % 4) == 0", file=file@entry=0x562c0b4f1ce0 "/test/10.4_dbg/strings/ctype-ucs2.c", line=line@entry=2195, function=function@entry=0x562c0b4f2290 <__PRETTY_FUNCTION__.15414> "my_lengthsp_utf32") at assert.c:101 #8 0x0000562c0af22845 in my_lengthsp_utf32 (cs=<optimized out>, ptr=<optimized out>, length=<optimized out>) at /test/10.4_dbg/strings/ctype-ucs2.c:2195 #9 0x0000562c0af1cf24 in my_uca_strnxfrm_utf32 (cs=0x562c0bada340 <my_charset_utf32_czech_uca_ci>, dst=0x14d2ed5513b9 '\245' <repeats 200 times>..., dstlen=<optimized out>, nweights=80, src=0x14d2ed5046b0 "2001-01-01", srclen=<optimized out>, flags=192) at /test/10.4_dbg/strings/ctype-uca.ic:674 #10 0x0000562c0a656e42 in Type_handler_string_result::make_sort_key (this=<optimized out>, to=0x14d2ed5513b9 '\245' <repeats 200 times>..., item=0x14d2ed46e8b0, sort_field=0x14d2ed4710a0, param=<optimized out>) at /test/10.4_dbg/sql/filesort.cc:1013 #11 0x0000562c0a6561ba in make_sortkey (param=param@entry=0x14d314f6a270, to=0x14d2ed5513b8 "\001", '\245' <repeats 199 times>..., ref_pos=ref_pos@entry=0x14d2ed441ca8 "") at /test/10.4_dbg/sql/filesort.cc:1198 #12 0x0000562c0a65a805 in find_all_keys (found_rows=0x14d2ed4eb5e0, pq=0x0, tempfile=0x14d314f6a300, buffpek_pointers=0x14d314f6a470, fs_info=0x14d2ed4eb400, select=0x14d2ed470790, param=0x14d314f6a270, thd=0x14d2ed415070) at /test/10.4_dbg/sql/filesort.cc:836 #13 filesort (thd=thd@entry=0x14d2ed415070, table=table@entry=0x14d2ed509070, filesort=filesort@entry=0x14d2ed470960, tracker=0x14d2ed471020, join=join@entry=0x14d2ed46ebc0, first_table_bit=<optimized out>) at /test/10.4_dbg/sql/filesort.cc:263 #14 0x0000562c0a409423 in create_sort_index (thd=0x14d2ed415070, join=0x14d2ed46ebc0, tab=tab@entry=0x14d2ed46fe50, fsort=0x14d2ed470960, fsort@entry=0x0) at /test/10.4_dbg/sql/sql_select.cc:23637 #15 0x0000562c0a40974a in st_join_table::sort_table (this=this@entry=0x14d2ed46fe50) at /test/10.4_dbg/sql/sql_select.cc:21381 #16 0x0000562c0a40987e in join_init_read_record (tab=0x14d2ed46fe50) at /test/10.4_dbg/sql/sql_select.cc:21320 #17 0x0000562c0a3f3eeb in sub_select (join=0x14d2ed46ebc0, join_tab=0x14d2ed46fe50, end_of_records=<optimized out>) at /test/10.4_dbg/sql/sql_select.cc:20397 #18 0x0000562c0a425a70 in do_select (procedure=0x0, join=0x14d2ed46ebc0) at /test/10.4_dbg/sql/sql_select.cc:19938 #19 JOIN::exec_inner (this=this@entry=0x14d2ed46ebc0) at /test/10.4_dbg/sql/sql_select.cc:4473 #20 0x0000562c0a42604d in JOIN::exec (this=this@entry=0x14d2ed46ebc0) at /test/10.4_dbg/sql/sql_select.cc:4255 #21 0x0000562c0a4243f3 in mysql_select (thd=thd@entry=0x14d2ed415070, tables=<optimized out>, wild_num=0, fields=@0x14d2ed46d290: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14d2ed46d648, last = 0x14d2ed46d648, elements = 1}, <No data fields>}, conds=0x0, og_num=<optimized out>, order=0x14d2ed46ea40, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x14d2ed46eb98, unit=0x14d2ed418f98, select_lex=0x14d2ed46d148) at /test/10.4_dbg/sql/sql_select.cc:4687 #22 0x0000562c0a42471e in handle_select (thd=thd@entry=0x14d2ed415070, lex=lex@entry=0x14d2ed418ed8, result=result@entry=0x14d2ed46eb98, setup_tables_done_option=setup_tables_done_option@entry=0) at /test/10.4_dbg/sql/sql_select.cc:410 #23 0x0000562c0a39d3c6 in execute_sqlcom_select (thd=thd@entry=0x14d2ed415070, all_tables=0x14d2ed46d690) at /test/10.4_dbg/sql/sql_parse.cc:6355 #24 0x0000562c0a3a879a in mysql_execute_command (thd=thd@entry=0x14d2ed415070) at /test/10.4_dbg/sql/sql_parse.cc:3889 #25 0x0000562c0a3b3090 in mysql_parse (thd=thd@entry=0x14d2ed415070, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14d314f6d460, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.4_dbg/sql/sql_parse.cc:7896 #26 0x0000562c0a3b5920 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x14d2ed415070, packet=packet@entry=0x14d2ed457071 "", packet_length=packet_length@entry=42, is_com_multi=is_com_multi@entry=false, is_next_command=is_next_command@entry=false) at /test/10.4_dbg/sql/sql_parse.cc:1834 #27 0x0000562c0a3b935b in do_command (thd=0x14d2ed415070) at /test/10.4_dbg/sql/sql_parse.cc:1352 #28 0x0000562c0a4e58b6 in do_handle_one_connection (connect=connect@entry=0x14d311c35790) at /test/10.4_dbg/sql/sql_connect.cc:1412 #29 0x0000562c0a4e59d6 in handle_one_connection (arg=0x14d311c35790) at /test/10.4_dbg/sql/sql_connect.cc:1316 #30 0x000014d31416c6db in start_thread (arg=0x14d314f6e700) at pthread_create.c:463 #31 0x000014d3132e6a3f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Bug confirmed present in: MariaDB: 10.4.15 (dbg) Bug confirmed not present in: MariaDB: 10.1.47 (dbg), 10.1.47 (opt), 10.2.34 (dbg), 10.2.34 (opt), 10.3.25 (dbg), 10.3.25 (opt), 10.4.15 (opt), 10.5.6 (dbg), 10.5.6 (opt) MySQL: 5.5.62 (dbg), 5.5.62 (opt), 5.6.47 (dbg), 5.6.47 (opt), 5.7.29 (dbg), 5.7.29 (opt), 8.0.19 (dbg), 8.0.19 (opt)
            julien.fritsch Julien Fritsch made changes -
            Fix Version/s 10.1 [ 16100 ]
            serg Sergei Golubchik made changes -
            Workflow MariaDB v3 [ 111390 ] MariaDB v4 [ 142106 ]
            julien.fritsch Julien Fritsch made changes -
            Priority Major [ 3 ] Critical [ 2 ]

            Another iteration.

            SET sql_mode='';
            CREATE TABLE t (HOST CHAR DEFAULT '%',USER CHAR DEFAULT '%',ROLE CHAR DEFAULT '%',ENABLED ENUM ('a','a') DEFAULT 'a',HISTORY ENUM ('a','a') DEFAULT 'a') ROW_FORMAT=DYNAMIC COLLATE=utf32_unicode_nopad_ci ENGINE=InnoDB;
            INSERT INTO t SELECT * FROM t;
            

            Leads to:

            10.9.0 b5852ffbeebc3000982988383daeefb0549e058a (Debug)

            mysqld: /test/10.9_dbg/strings/ctype-ucs2.c:2226: my_lengthsp_utf32: Assertion `(length % 4) == 0' failed.
            

            10.9.0 b5852ffbeebc3000982988383daeefb0549e058a (Debug)

            Core was generated by `/test/MD140222-mariadb-10.9.0-linux-x86_64-dbg/bin/mysqld --no-defaults --core-'.
            Program terminated with signal SIGABRT, Aborted.
            #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
            [Current thread is 1 (Thread 0x14d33c07c700 (LWP 1443699))]
            (gdb) bt
            #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
            #1  0x000014d33f639859 in __GI_abort () at abort.c:79
            #2  0x000014d33f639729 in __assert_fail_base (fmt=0x14d33f7cf588 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x5603b8011c9a "(length % 4) == 0", file=0x5603b8011c28 "/test/10.9_dbg/strings/ctype-ucs2.c", line=2226, function=<optimized out>) at assert.c:92
            #3  0x000014d33f64af36 in __GI___assert_fail (assertion=assertion@entry=0x5603b8011c9a "(length % 4) == 0", file=file@entry=0x5603b8011c28 "/test/10.9_dbg/strings/ctype-ucs2.c", line=line@entry=2226, function=function@entry=0x5603b8012390 <__PRETTY_FUNCTION__.18380> "my_lengthsp_utf32") at assert.c:101
            #4  0x00005603b79ad862 in my_lengthsp_utf32 (cs=<optimized out>, ptr=<optimized out>, length=<optimized out>) at /test/10.9_dbg/strings/ctype-ucs2.c:2226
            #5  0x00005603b7133f36 in charset_info_st::lengthsp (length=2, str=0x14d2a402113a "", this=<optimized out>) at /test/10.9_dbg/include/m_ctype.h:699
            #6  Field_enum::store (this=this@entry=0x14d2a40784e0, from=0x14d2a402113a "", length=2, cs=0x5603b84436c0 <my_charset_utf32_unicode_nopad_ci>) at /test/10.9_dbg/sql/field.cc:9224
            #7  0x00005603b6fb095d in Field::save_in_field_str (this=this@entry=0x14d2a402dd28, to=to@entry=0x14d2a40784e0) at /test/10.9_dbg/sql/sql_string.h:278
            #8  0x00005603b71470c7 in Field_enum::save_in_field (this=0x14d2a402dd28, to=0x14d2a40784e0) at /test/10.9_dbg/sql/field.h:4786
            #9  0x00005603b7147592 in Field_enum::store_field (this=0x14d2a40784e0, from=0x14d2a402dd28) at /test/10.9_dbg/sql/field.h:4780
            #10 0x00005603b7147972 in field_conv_incompatible (to=to@entry=0x14d2a40784e0, from=from@entry=0x14d2a402dd28) at /test/10.9_dbg/sql/field_conv.cc:850
            #11 0x00005603b7148da1 in field_conv (to=to@entry=0x14d2a40784e0, from=from@entry=0x14d2a402dd28) at /test/10.9_dbg/sql/field_conv.cc:861
            #12 0x00005603b6eba09d in Create_tmp_table::finalize (this=this@entry=0x14d33c07a8a0, thd=thd@entry=0x14d2a4000db8, table=table@entry=0x14d2a4077350, param=param@entry=0x14d2a4073660, do_not_open=do_not_open@entry=true, keep_row_order=keep_row_order@entry=false) at /test/10.9_dbg/sql/sql_select.cc:19275
            #13 0x00005603b6ebacea in create_tmp_table (thd=0x14d2a4000db8, param=0x14d2a4073660, fields=@0x14d2a4015fa8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14d2a4014b38, last = 0x14d2a4014b38, elements = 5}, <No data fields>}, group=group@entry=0x0, distinct=distinct@entry=false, save_sum_fields=save_sum_fields@entry=false, select_options=2202244877056, rows_limit=18446744073709551615, table_alias=0x5603b8271ba0 <empty_clex_str>, do_not_open=true, keep_row_order=false) at /test/10.9_dbg/sql/sql_select.cc:19643
            #14 0x00005603b6ecae91 in JOIN::create_postjoin_aggr_table (this=this@entry=0x14d2a4015c40, tab=tab@entry=0x14d2a4017978, table_fields=table_fields@entry=0x14d2a4015fa8, table_group=0x0, save_sum_fields=<optimized out>, distinct=distinct@entry=false, keep_row_order=false) at /test/10.9_dbg/sql/sql_select.cc:4026
            #15 0x00005603b6ecc0ce in JOIN::make_aggr_tables_info (this=this@entry=0x14d2a4015c40) at /test/10.9_dbg/sql/sql_select.cc:3605
            #16 0x00005603b6edf2cd in JOIN::optimize_stage2 (this=this@entry=0x14d2a4015c40) at /test/10.9_dbg/sql/sql_select.cc:3233
            #17 0x00005603b6ee0ee8 in JOIN::optimize_inner (this=this@entry=0x14d2a4015c40) at /test/10.9_dbg/sql/sql_select.cc:2492
            #18 0x00005603b6ee11dc in JOIN::optimize (this=this@entry=0x14d2a4015c40) at /test/10.9_dbg/sql/sql_select.cc:1808
            #19 0x00005603b6ee1880 in mysql_select (thd=thd@entry=0x14d2a4000db8, tables=0x14d2a4014b80, fields=@0x14d2a4014848: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14d2a4014b38, last = 0x14d2a4016818, elements = 5}, <No data fields>}, conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2202244745984, result=0x14d2a4015b80, unit=0x14d2a40051c8, select_lex=0x14d2a40145a8) at /test/10.9_dbg/sql/sql_select.cc:4993
            #20 0x00005603b6ee1b84 in handle_select (thd=thd@entry=0x14d2a4000db8, lex=lex@entry=0x14d2a40050f0, result=result@entry=0x14d2a4015b80, setup_tables_done_option=setup_tables_done_option@entry=1073741824) at /test/10.9_dbg/sql/sql_select.cc:543
            #21 0x00005603b6e500c4 in mysql_execute_command (thd=thd@entry=0x14d2a4000db8, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/10.9_dbg/sql/sql_parse.cc:4708
            #22 0x00005603b6e3a315 in mysql_parse (thd=thd@entry=0x14d2a4000db8, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14d33c07b400) at /test/10.9_dbg/sql/sql_parse.cc:8027
            #23 0x00005603b6e48fb1 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x14d2a4000db8, packet=packet@entry=0x14d2a400b889 "INSERT INTO t SELECT * FROM t", packet_length=packet_length@entry=29, blocking=blocking@entry=true) at /test/10.9_dbg/sql/sql_class.h:1362
            #24 0x00005603b6e4c3f8 in do_command (thd=0x14d2a4000db8, blocking=blocking@entry=true) at /test/10.9_dbg/sql/sql_parse.cc:1402
            #25 0x00005603b6fc6fc4 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x5603b9aa1ce8, put_in_cache=put_in_cache@entry=true) at /test/10.9_dbg/sql/sql_connect.cc:1418
            #26 0x00005603b6fc75c9 in handle_one_connection (arg=arg@entry=0x5603b9aa1ce8) at /test/10.9_dbg/sql/sql_connect.cc:1312
            #27 0x00005603b744dd67 in pfs_spawn_thread (arg=0x5603b99e4768) at /test/10.9_dbg/storage/perfschema/pfs.cc:2201
            #28 0x000014d33fb48609 in start_thread (arg=<optimized out>) at pthread_create.c:477
            #29 0x000014d33f736293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            

            Bug confirmed present in:
            MariaDB: 10.3.33 (dbg), 10.4.23 (dbg), 10.5.14 (dbg), 10.6.6 (dbg), 10.7.2 (dbg), 10.8.1 (dbg), 10.9.0 (dbg)

            Bug (or feature/syntax) confirmed not present in:
            MariaDB: 10.2.42 (dbg), 10.2.42 (opt), 10.3.33 (opt), 10.4.23 (opt), 10.5.14 (opt), 10.6.6 (opt), 10.7.2 (opt), 10.8.1 (opt), 10.9.0 (opt)
            MySQL: 5.5.62 (dbg), 5.5.62 (opt), 5.6.51 (dbg), 5.6.51 (opt), 5.7.36 (dbg), 5.7.36 (opt), 8.0.27 (dbg), 8.0.27 (opt)

            Roel Roel Van de Paar added a comment - Another iteration. SET sql_mode= '' ; CREATE TABLE t (HOST CHAR DEFAULT '%' , USER CHAR DEFAULT '%' ,ROLE CHAR DEFAULT '%' ,ENABLED ENUM ( 'a' , 'a' ) DEFAULT 'a' ,HISTORY ENUM ( 'a' , 'a' ) DEFAULT 'a' ) ROW_FORMAT= DYNAMIC COLLATE =utf32_unicode_nopad_ci ENGINE=InnoDB; INSERT INTO t SELECT * FROM t; Leads to: 10.9.0 b5852ffbeebc3000982988383daeefb0549e058a (Debug) mysqld: /test/10.9_dbg/strings/ctype-ucs2.c:2226: my_lengthsp_utf32: Assertion `(length % 4) == 0' failed. 10.9.0 b5852ffbeebc3000982988383daeefb0549e058a (Debug) Core was generated by `/test/MD140222-mariadb-10.9.0-linux-x86_64-dbg/bin/mysqld --no-defaults --core-'. Program terminated with signal SIGABRT, Aborted. #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 [Current thread is 1 (Thread 0x14d33c07c700 (LWP 1443699))] (gdb) bt #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 #1 0x000014d33f639859 in __GI_abort () at abort.c:79 #2 0x000014d33f639729 in __assert_fail_base (fmt=0x14d33f7cf588 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x5603b8011c9a "(length % 4) == 0", file=0x5603b8011c28 "/test/10.9_dbg/strings/ctype-ucs2.c", line=2226, function=<optimized out>) at assert.c:92 #3 0x000014d33f64af36 in __GI___assert_fail (assertion=assertion@entry=0x5603b8011c9a "(length % 4) == 0", file=file@entry=0x5603b8011c28 "/test/10.9_dbg/strings/ctype-ucs2.c", line=line@entry=2226, function=function@entry=0x5603b8012390 <__PRETTY_FUNCTION__.18380> "my_lengthsp_utf32") at assert.c:101 #4 0x00005603b79ad862 in my_lengthsp_utf32 (cs=<optimized out>, ptr=<optimized out>, length=<optimized out>) at /test/10.9_dbg/strings/ctype-ucs2.c:2226 #5 0x00005603b7133f36 in charset_info_st::lengthsp (length=2, str=0x14d2a402113a "", this=<optimized out>) at /test/10.9_dbg/include/m_ctype.h:699 #6 Field_enum::store (this=this@entry=0x14d2a40784e0, from=0x14d2a402113a "", length=2, cs=0x5603b84436c0 <my_charset_utf32_unicode_nopad_ci>) at /test/10.9_dbg/sql/field.cc:9224 #7 0x00005603b6fb095d in Field::save_in_field_str (this=this@entry=0x14d2a402dd28, to=to@entry=0x14d2a40784e0) at /test/10.9_dbg/sql/sql_string.h:278 #8 0x00005603b71470c7 in Field_enum::save_in_field (this=0x14d2a402dd28, to=0x14d2a40784e0) at /test/10.9_dbg/sql/field.h:4786 #9 0x00005603b7147592 in Field_enum::store_field (this=0x14d2a40784e0, from=0x14d2a402dd28) at /test/10.9_dbg/sql/field.h:4780 #10 0x00005603b7147972 in field_conv_incompatible (to=to@entry=0x14d2a40784e0, from=from@entry=0x14d2a402dd28) at /test/10.9_dbg/sql/field_conv.cc:850 #11 0x00005603b7148da1 in field_conv (to=to@entry=0x14d2a40784e0, from=from@entry=0x14d2a402dd28) at /test/10.9_dbg/sql/field_conv.cc:861 #12 0x00005603b6eba09d in Create_tmp_table::finalize (this=this@entry=0x14d33c07a8a0, thd=thd@entry=0x14d2a4000db8, table=table@entry=0x14d2a4077350, param=param@entry=0x14d2a4073660, do_not_open=do_not_open@entry=true, keep_row_order=keep_row_order@entry=false) at /test/10.9_dbg/sql/sql_select.cc:19275 #13 0x00005603b6ebacea in create_tmp_table (thd=0x14d2a4000db8, param=0x14d2a4073660, fields=@0x14d2a4015fa8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14d2a4014b38, last = 0x14d2a4014b38, elements = 5}, <No data fields>}, group=group@entry=0x0, distinct=distinct@entry=false, save_sum_fields=save_sum_fields@entry=false, select_options=2202244877056, rows_limit=18446744073709551615, table_alias=0x5603b8271ba0 <empty_clex_str>, do_not_open=true, keep_row_order=false) at /test/10.9_dbg/sql/sql_select.cc:19643 #14 0x00005603b6ecae91 in JOIN::create_postjoin_aggr_table (this=this@entry=0x14d2a4015c40, tab=tab@entry=0x14d2a4017978, table_fields=table_fields@entry=0x14d2a4015fa8, table_group=0x0, save_sum_fields=<optimized out>, distinct=distinct@entry=false, keep_row_order=false) at /test/10.9_dbg/sql/sql_select.cc:4026 #15 0x00005603b6ecc0ce in JOIN::make_aggr_tables_info (this=this@entry=0x14d2a4015c40) at /test/10.9_dbg/sql/sql_select.cc:3605 #16 0x00005603b6edf2cd in JOIN::optimize_stage2 (this=this@entry=0x14d2a4015c40) at /test/10.9_dbg/sql/sql_select.cc:3233 #17 0x00005603b6ee0ee8 in JOIN::optimize_inner (this=this@entry=0x14d2a4015c40) at /test/10.9_dbg/sql/sql_select.cc:2492 #18 0x00005603b6ee11dc in JOIN::optimize (this=this@entry=0x14d2a4015c40) at /test/10.9_dbg/sql/sql_select.cc:1808 #19 0x00005603b6ee1880 in mysql_select (thd=thd@entry=0x14d2a4000db8, tables=0x14d2a4014b80, fields=@0x14d2a4014848: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14d2a4014b38, last = 0x14d2a4016818, elements = 5}, <No data fields>}, conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2202244745984, result=0x14d2a4015b80, unit=0x14d2a40051c8, select_lex=0x14d2a40145a8) at /test/10.9_dbg/sql/sql_select.cc:4993 #20 0x00005603b6ee1b84 in handle_select (thd=thd@entry=0x14d2a4000db8, lex=lex@entry=0x14d2a40050f0, result=result@entry=0x14d2a4015b80, setup_tables_done_option=setup_tables_done_option@entry=1073741824) at /test/10.9_dbg/sql/sql_select.cc:543 #21 0x00005603b6e500c4 in mysql_execute_command (thd=thd@entry=0x14d2a4000db8, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/10.9_dbg/sql/sql_parse.cc:4708 #22 0x00005603b6e3a315 in mysql_parse (thd=thd@entry=0x14d2a4000db8, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14d33c07b400) at /test/10.9_dbg/sql/sql_parse.cc:8027 #23 0x00005603b6e48fb1 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x14d2a4000db8, packet=packet@entry=0x14d2a400b889 "INSERT INTO t SELECT * FROM t", packet_length=packet_length@entry=29, blocking=blocking@entry=true) at /test/10.9_dbg/sql/sql_class.h:1362 #24 0x00005603b6e4c3f8 in do_command (thd=0x14d2a4000db8, blocking=blocking@entry=true) at /test/10.9_dbg/sql/sql_parse.cc:1402 #25 0x00005603b6fc6fc4 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x5603b9aa1ce8, put_in_cache=put_in_cache@entry=true) at /test/10.9_dbg/sql/sql_connect.cc:1418 #26 0x00005603b6fc75c9 in handle_one_connection (arg=arg@entry=0x5603b9aa1ce8) at /test/10.9_dbg/sql/sql_connect.cc:1312 #27 0x00005603b744dd67 in pfs_spawn_thread (arg=0x5603b99e4768) at /test/10.9_dbg/storage/perfschema/pfs.cc:2201 #28 0x000014d33fb48609 in start_thread (arg=<optimized out>) at pthread_create.c:477 #29 0x000014d33f736293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 Bug confirmed present in: MariaDB: 10.3.33 (dbg), 10.4.23 (dbg), 10.5.14 (dbg), 10.6.6 (dbg), 10.7.2 (dbg), 10.8.1 (dbg), 10.9.0 (dbg) Bug (or feature/syntax) confirmed not present in: MariaDB: 10.2.42 (dbg), 10.2.42 (opt), 10.3.33 (opt), 10.4.23 (opt), 10.5.14 (opt), 10.6.6 (opt), 10.7.2 (opt), 10.8.1 (opt), 10.9.0 (opt) MySQL: 5.5.62 (dbg), 5.5.62 (opt), 5.6.51 (dbg), 5.6.51 (opt), 5.7.36 (dbg), 5.7.36 (opt), 8.0.27 (dbg), 8.0.27 (opt)
            Roel Roel Van de Paar made changes -
            Affects Version/s 10.6 [ 24028 ]
            Affects Version/s 10.7 [ 24805 ]
            Affects Version/s 10.8 [ 26121 ]
            Affects Version/s 10.9 [ 26905 ]
            Roel Roel Van de Paar made changes -
            Fix Version/s 10.6 [ 24028 ]
            Fix Version/s 10.7 [ 24805 ]
            Roel Roel Van de Paar made changes -
            Labels affects-tests regression affects-tests regression regression-10.3

            All UniqueID's seen thus far

            (length % 4) == 0|SIGABRT|my_lengthsp_utf32|charset_info_st::lengthsp|Column_definition::create_interval_from_interval_list|Column_definition::prepare_interval_field
            (length % 4) == 0|SIGABRT|my_lengthsp_utf32|my_ci_lengthsp|my_uca_strnxfrm_utf32|charset_info_st::strnxfrm
            (length % 4) == 0|SIGABRT|my_lengthsp_utf32|my_uca_strnxfrm_utf32|Type_handler_string_result::make_sort_key|make_sortkey
            (length % 4) == 0|SIGABRT|my_lengthsp_utf32|Field_enum::store|Field::save_in_field_str|Field_enum::save_in_field
            (length % 4) == 0|SIGABRT|my_lengthsp_utf32|charset_info_st::lengthsp|Field_enum::store|Field::save_in_field_str
            

            Roel Roel Van de Paar added a comment - All UniqueID's seen thus far (length % 4) == 0|SIGABRT|my_lengthsp_utf32|charset_info_st::lengthsp|Column_definition::create_interval_from_interval_list|Column_definition::prepare_interval_field (length % 4) == 0|SIGABRT|my_lengthsp_utf32|my_ci_lengthsp|my_uca_strnxfrm_utf32|charset_info_st::strnxfrm (length % 4) == 0|SIGABRT|my_lengthsp_utf32|my_uca_strnxfrm_utf32|Type_handler_string_result::make_sort_key|make_sortkey (length % 4) == 0|SIGABRT|my_lengthsp_utf32|Field_enum::store|Field::save_in_field_str|Field_enum::save_in_field (length % 4) == 0|SIGABRT|my_lengthsp_utf32|charset_info_st::lengthsp|Field_enum::store|Field::save_in_field_str
            Roel Roel Van de Paar made changes -
            Summary Assertion `(length % 4) == 0' failed in my_lengthsp_utf32 on ALTER TABLE and SELECT Assertion `(length % 4) == 0' failed in my_lengthsp_utf32 on ALTER TABLE, SELECT and INSERT

            bar A fix for this ticket would be very appreciated, thank you!

            Roel Roel Van de Paar added a comment - bar A fix for this ticket would be very appreciated, thank you!

            The crash is repeatable with utf32_general_ci instead of utf32_myanmar_ci:

            DROP TABLE IF EXISTS t1;
            CREATE TABLE t1 (a CHAR(1));
            SET COLLATION_CONNECTION=utf32_general_ci, CHARACTER_SET_CLIENT=binary;
            ALTER TABLE t1 CHANGE a a ENUM('a','a') CHARACTER SET utf32;
            

            bar Alexander Barkov added a comment - The crash is repeatable with utf32_general_ci instead of utf32_myanmar_ci: DROP TABLE IF EXISTS t1; CREATE TABLE t1 (a CHAR (1)); SET COLLATION_CONNECTION=utf32_general_ci, CHARACTER_SET_CLIENT= binary ; ALTER TABLE t1 CHANGE a a ENUM( 'a' , 'a' ) CHARACTER SET utf32;

            This problem:

            SET sql_mode='';
            CREATE TABLE t (HOST CHAR DEFAULT '%',USER CHAR DEFAULT '%',ROLE CHAR DEFAULT '%',ENABLED ENUM ('a','a') DEFAULT 'a',HISTORY ENUM ('a','a') DEFAULT 'a') ROW_FORMAT=DYNAMIC COLLATE=utf32_unicode_nopad_ci ENGINE=InnoDB;
            INSERT INTO t SELECT * FROM t;
            

            is now reported as a separate issue MDEV-28062.

            bar Alexander Barkov added a comment - This problem: SET sql_mode= '' ; CREATE TABLE t (HOST CHAR DEFAULT '%' , USER CHAR DEFAULT '%' ,ROLE CHAR DEFAULT '%' ,ENABLED ENUM ( 'a' , 'a' ) DEFAULT 'a' ,HISTORY ENUM ( 'a' , 'a' ) DEFAULT 'a' ) ROW_FORMAT= DYNAMIC COLLATE =utf32_unicode_nopad_ci ENGINE=InnoDB; INSERT INTO t SELECT * FROM t; is now reported as a separate issue MDEV-28062 .
            bar Alexander Barkov made changes -
            issue.field.resolutiondate 2022-03-14 13:49:38.0 2022-03-14 13:49:38.771
            bar Alexander Barkov made changes -
            Fix Version/s 10.2.44 [ 27514 ]
            Fix Version/s 10.3.35 [ 27512 ]
            Fix Version/s 10.4.25 [ 27510 ]
            Fix Version/s 10.5.16 [ 27508 ]
            Fix Version/s 10.6.8 [ 27506 ]
            Fix Version/s 10.7.4 [ 27504 ]
            Fix Version/s 10.8.3 [ 27502 ]
            Fix Version/s 10.2 [ 14601 ]
            Fix Version/s 10.3 [ 22126 ]
            Fix Version/s 10.4 [ 22408 ]
            Fix Version/s 10.5 [ 23123 ]
            Fix Version/s 10.6 [ 24028 ]
            Fix Version/s 10.7 [ 24805 ]
            Resolution Fixed [ 1 ]
            Status Open [ 1 ] Closed [ 6 ]
            Roel Roel Van de Paar made changes -
            Roel Roel Van de Paar made changes -
            Comment [ Additional debug regression in 10.4, and this one is also present in all MySQL debug versions.
            {code:sql}
            SET sql_mode='',character_set_connection=utf32;
            CREATE TABLE t (c ENUM ('','')) CHARACTER SET utf32 ENGINE=InnoDB;
            INSERT INTO t VALUES (DATE_FORMAT('2004-02-02','%W'));
            {code}

            Leads to:
            {noformat:title=10.10.0 081a284712bb661349e2e3802077b12211cede3e (Debug)}
            mysqld: /test/10.10_dbg/strings/ctype-ucs2.c:2226: my_lengthsp_utf32: Assertion `(length % 4) == 0' failed.
            {noformat}

            {noformat:title=10.10.0 081a284712bb661349e2e3802077b12211cede3e (Debug)}
            Core was generated by `/test/MD310522-mariadb-10.10.0-linux-x86_64-dbg/bin/mysqld --no-defaults --core'.
            Program terminated with signal SIGABRT, Aborted.
            #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
            [Current thread is 1 (Thread 0x14c822175700 (LWP 3559645))]
            (gdb) bt
            #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
            #1 0x000014c840b20859 in __GI_abort () at abort.c:79
            #2 0x000014c840b20729 in __assert_fail_base (fmt=0x14c840cb6588 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x56289155baba "(length % 4) == 0", file=0x56289155ba48 "/test/10.10_dbg/strings/ctype-ucs2.c", line=2226, function=<optimized out>) at assert.c:92
            #3 0x000014c840b31fd6 in __GI___assert_fail (assertion=assertion@entry=0x56289155baba "(length % 4) == 0", file=file@entry=0x56289155ba48 "/test/10.10_dbg/strings/ctype-ucs2.c", line=line@entry=2226, function=function@entry=0x56289155c1b0 <__PRETTY_FUNCTION__.17507> "my_lengthsp_utf32") at assert.c:101
            #4 0x0000562890f469a7 in my_lengthsp_utf32 (cs=<optimized out>, ptr=<optimized out>, length=<optimized out>) at /test/10.10_dbg/strings/ctype-ucs2.c:2226
            #5 0x000056289078ff5a in charset_info_st::lengthsp (length=7, str=0x14c822173840 "", this=<optimized out>) at /test/10.10_dbg/include/m_ctype.h:699
            #6 Field_enum::store (this=0x14c79c027eb8, from=0x14c822173840 "", length=7, cs=0x56289196b100 <my_charset_utf32_general_ci>) at /test/10.10_dbg/sql/field.cc:9230
            #7 0x00005628907e1fb5 in Item::save_str_in_field (this=0x14c79c014a98, field=0x14c79c027eb8, no_conversions=<optimized out>) at /test/10.10_dbg/sql/sql_string.h:278
            #8 0x00005628906c15f8 in Type_handler_string_result::Item_save_in_field (this=<optimized out>, item=<optimized out>, field=<optimized out>, no_conversions=<optimized out>) at /test/10.10_dbg/sql/sql_type.cc:4338
            #9 0x00005628907c88d3 in Item::save_in_field (this=0x14c79c014a98, field=0x14c79c027eb8, no_conversions=<optimized out>) at /test/10.10_dbg/sql/item.cc:6836
            #10 0x000056289044b13b in fill_record (thd=thd@entry=0x14c79c000db8, table=table@entry=0x14c79c0210f8, ptr=0x14c79c027eb0, ptr@entry=0x14c79c027ea8, values=@0x14c79c0148a8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14c79c014b78, last = 0x14c79c014b78, elements = 1}, <No data fields>}, ignore_errors=ignore_errors@entry=false, use_value=use_value@entry=false) at /test/10.10_dbg/sql/sql_base.cc:9104
            #11 0x000056289044b1fe in fill_record_n_invoke_before_triggers (thd=thd@entry=0x14c79c000db8, table=table@entry=0x14c79c0210f8, ptr=0x14c79c027ea8, values=@0x14c79c0148a8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14c79c014b78, last = 0x14c79c014b78, elements = 1}, <No data fields>}, ignore_errors=ignore_errors@entry=false, event=event@entry=TRG_EVENT_INSERT) at /test/10.10_dbg/sql/sql_base.cc:9159
            #12 0x000056289048e479 in mysql_insert (thd=thd@entry=0x14c79c000db8, table_list=<optimized out>, fields=@0x14c79c005e90: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x5628919a5a00 <end_of_list>, last = 0x14c79c005e90, elements = 0}, <No data fields>}, values_list=@0x14c79c005ed8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x14c79c014be8, last = 0x14c79c014be8, elements = 1}, <No data fields>}, update_fields=@0x14c79c005ec0: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x5628919a5a00 <end_of_list>, last = 0x14c79c005ec0, elements = 0}, <No data fields>}, update_values=@0x14c79c005ea8: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x5628919a5a00 <end_of_list>, last = 0x14c79c005ea8, elements = 0}, <No data fields>}, duplic=DUP_ERROR, ignore=false, result=0x0) at /test/10.10_dbg/sql/sql_insert.cc:1075
            #13 0x00005628904d0803 in mysql_execute_command (thd=thd@entry=0x14c79c000db8, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/10.10_dbg/sql/sql_parse.cc:4562
            #14 0x00005628904bce3a in mysql_parse (thd=thd@entry=0x14c79c000db8, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x14c822174470) at /test/10.10_dbg/sql/sql_parse.cc:8036
            #15 0x00005628904ca422 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x14c79c000db8, packet=packet@entry=0x14c79c00b6d9 "INSERT INTO t VALUES (DATE_FORMAT('2004-02-02','%W'))", packet_length=packet_length@entry=53, blocking=blocking@entry=true) at /test/10.10_dbg/sql/sql_class.h:1364
            #16 0x00005628904ccb2c in do_command (thd=0x14c79c000db8, blocking=blocking@entry=true) at /test/10.10_dbg/sql/sql_parse.cc:1407
            #17 0x000056289062c3c0 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x562893699288, put_in_cache=put_in_cache@entry=true) at /test/10.10_dbg/sql/sql_connect.cc:1418
            #18 0x000056289062c8c9 in handle_one_connection (arg=0x562893699288) at /test/10.10_dbg/sql/sql_connect.cc:1312
            #19 0x000014c841031609 in start_thread (arg=<optimized out>) at pthread_create.c:477
            #20 0x000014c840c1d133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
            {noformat}

            Bug confirmed present in:
            MariaDB: 10.4.26 (dbg), 10.5.17 (dbg), 10.6.9 (dbg), 10.7.5 (dbg), 10.8.4 (dbg), 10.9.2 (dbg), 10.10.0 (dbg)
            MySQL: 5.5.62 (dbg), 5.6.51 (dbg), 5.7.38 (dbg), 8.0.29 (dbg)

            Bug (or feature/syntax) confirmed not present in:
            MariaDB: 10.3.36 (dbg), 10.3.36 (opt), 10.4.26 (opt), 10.5.17 (opt), 10.6.9 (opt), 10.7.5 (opt), 10.8.4 (opt), 10.9.2 (opt), 10.10.0 (opt)
            MySQL: 5.5.62 (opt), 5.6.51 (opt), 5.7.38 (opt), 8.0.29 (opt) ]
            Roel Roel Van de Paar made changes -
            Roel Roel Van de Paar made changes -

            People

              bar Alexander Barkov
              Roel Roel Van de Paar
              Votes:
              0 Vote for this issue
              Watchers:
              4 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.