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

Assertion `0' failed in Type_handler_string_result::make_packed_sort_key_part

    XMLWordPrintable

Details

    Description

      Present in at least InnoDB and MyISAM.

      CREATE TABLE t (c TEXT,PRIMARY KEY(c (1)));
      INSERT INTO t VALUES (1);
      UPDATE t SET c=1 ORDER BY (SELECT c LIMIT 0);
      

      Leads to:

      11.0.1 b075191ba8598af6aff5549e6e19f6255aef258a (Debug)

      mysqld: /test/11.0_dbg/sql/filesort.cc:2607: virtual uint Type_handler_string_result::make_packed_sort_key_part(uchar*, Item*, const SORT_FIELD_ATTR*, Sort_param*) const: Assertion `0' failed.
      

      11.0.1 b075191ba8598af6aff5549e6e19f6255aef258a (Debug)

      Core was generated by `/test/MD090123-mariadb-11.0.1-linux-x86_64-dbg/bin/mysqld --no-defaults --core-'.
      Program terminated with signal SIGABRT, Aborted.
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=23245995787840)
          at ./nptl/pthread_kill.c:44
      [Current thread is 1 (Thread 0x152461524640 (LWP 2822113))]
      (gdb) bt
      #0  __pthread_kill_implementation (no_tid=0, signo=6, threadid=23245995787840) at ./nptl/pthread_kill.c:44
      #1  __pthread_kill_internal (signo=6, threadid=23245995787840) at ./nptl/pthread_kill.c:78
      #2  __GI___pthread_kill (threadid=23245995787840, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
      #3  0x0000152479db2476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
      #4  0x0000152479d987f3 in __GI_abort () at ./stdlib/abort.c:79
      #5  0x0000152479d9871b in __assert_fail_base (fmt=0x152479f4d150 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x559941a653a9 "0", file=0x559941a45120 "/test/11.0_dbg/sql/filesort.cc", line=2607, function=<optimized out>) at ./assert/assert.c:92
      #6  0x0000152479da9e96 in __GI___assert_fail (assertion=0x559941a653a9 "0", file=0x559941a45120 "/test/11.0_dbg/sql/filesort.cc", line=2607, function=0x559941a46198 "virtual uint Type_handler_string_result::make_packed_sort_key_part(uchar*, Item*, const SORT_FIELD_ATTR*, Sort_param*) const") at ./assert/assert.c:101
      #7  0x00005599411240eb in Type_handler_string_result::make_packed_sort_key_part (this=<optimized out>, to=0x1524280660fc '\245' <repeats 200 times>..., item=<optimized out>, sort_field=0x152428015b30, param=<optimized out>) at /test/11.0_dbg/sql/filesort.cc:2607
      #8  0x000055994111fa40 in make_packed_sortkey (to=0x1524280660fc '\245' <repeats 200 times>..., param=0x1524615220c0) at /test/11.0_dbg/sql/filesort.cc:3094
      #9  make_sortkey (param=param@entry=0x1524615220c0, to=0x1524280660f8 '\245' <repeats 200 times>..., ref_pos=ref_pos@entry=0x152428024030 "\001", using_packed_sortkeys=using_packed_sortkeys@entry=true) at /test/11.0_dbg/sql/filesort.cc:1362
      #10 0x0000559941122bee in find_all_keys (found_rows=0x1524280660d0, pq=0x0, tempfile=0x152461522180, buffpek_pointers=0x1524615222f0, fs_info=0x152428065ee0, select=0x0, param=0x1524615220c0, thd=0x152428000d58) at /test/11.0_dbg/sql/filesort.cc:978
      #11 filesort (thd=thd@entry=0x152428000d58, table=table@entry=0x1524280239b8, filesort=filesort@entry=0x1524615229e0, tracker=0x152428015aa8, join=join@entry=0x0, first_table_bit=first_table_bit@entry=0) at /test/11.0_dbg/sql/filesort.cc:357
      #12 0x0000559940f64116 in mysql_update (thd=thd@entry=0x152428000d58, table_list=<optimized out>, fields=@0x152428005a68: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x152428013b00, last = 0x152428013b00, elements = 1}, <No data fields>}, values=@0x152428005ea0: {<base_list> = {<Sql_alloc> = {<No data fields>}, first = 0x152428013b10, last = 0x152428013b10, elements = 1}, <No data fields>}, conds=<optimized out>, order_num=<optimized out>, order=0x152428014ba0, limit=18446744073709551615, ignore=<optimized out>, found_return=<optimized out>, updated_return=<optimized out>) at /test/11.0_dbg/sql/sql_update.cc:814
      #13 0x0000559940e64a3c in mysql_execute_command (thd=thd@entry=0x152428000d58, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/11.0_dbg/sql/sql_parse.cc:4410
      #14 0x0000559940e6a934 in mysql_parse (thd=thd@entry=0x152428000d58, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x1524615232c0) at /test/11.0_dbg/sql/sql_parse.cc:8000
      #15 0x0000559940e6cac8 in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x152428000d58, packet=packet@entry=0x15242800ae09 "UPDATE t SET c=1 ORDER BY (SELECT c LIMIT 0)", packet_length=packet_length@entry=44, blocking=blocking@entry=true) at /test/11.0_dbg/sql/sql_class.h:243
      #16 0x0000559940e6e921 in do_command (thd=0x152428000d58, blocking=blocking@entry=true) at /test/11.0_dbg/sql/sql_parse.cc:1407
      #17 0x0000559940fb89ea in do_handle_one_connection (connect=<optimized out>, connect@entry=0x5599432e5b28, put_in_cache=put_in_cache@entry=true) at /test/11.0_dbg/sql/sql_connect.cc:1416
      #18 0x0000559940fb8c4e in handle_one_connection (arg=0x5599432e5b28) at /test/11.0_dbg/sql/sql_connect.cc:1318
      #19 0x0000152479e04b43 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
      #20 0x0000152479e96a00 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
      

      Bug confirmed present in:
      MariaDB: 10.3.38 (dbg), 10.4.28 (dbg), 10.5.19 (dbg), 10.6.12 (dbg), 10.7.8 (dbg), 10.8.7 (dbg), 10.9.5 (dbg), 10.10.3 (dbg), 10.11.2 (dbg), 11.0.1 (dbg)
      MySQL: 5.5.62 (dbg), 5.6.51 (dbg)

      Bug (or feature/syntax) confirmed not present in:
      MariaDB: 10.3.38 (opt), 10.4.28 (opt), 10.5.19 (opt), 10.6.12 (opt), 10.7.8 (opt), 10.8.7 (opt), 10.9.5 (opt), 10.10.3 (opt), 10.11.2 (opt), 11.0.1 (opt)
      MySQL: 5.5.62 (opt), 5.6.51 (opt), 5.7.40 (dbg), 5.7.40 (opt), 8.0.31 (dbg), 8.0.31 (opt)

      UniqueID's/stacks seen accross versions:

      0|SIGABRT|Type_handler_string_result::make_packed_sort_key_part|make_packed_sortkey|make_sortkey|find_all_keys
      0|SIGABRT|Type_handler_string_result::make_sort_key|make_sortkey|find_all_keys|filesort
      0|SIGABRT|make_sortkey|find_all_keys|filesort|mysql_update
      

      Attachments

        Issue Links

          Activity

            People

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