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

Assertion `item->maybe_null' failed in Type_handler_temporal_result::make_sort_key

    Details

    • Type: Bug
    • Status: Open (View Workflow)
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 10.3, 10.4
    • Fix Version/s: 10.3, 10.4
    • Component/s: Temporal Types
    • Labels:
      None

      Description

      CREATE TABLE t1 (t TIME NOT NULL);
      INSERT INTO t1 VALUES ('00:20:11'),('14:52:05');
      SELECT GREATEST('9999', t) FROM t1 ORDER BY 1;
       
      # Cleanup
      DROP TABLE t1;
      

      10.3 14a58cea

      mysqld: /data/src/10.3/sql/filesort.cc:1068: virtual void Type_handler_temporal_result::make_sort_key(uchar*, Item*, const SORT_FIELD_ATTR*, Sort_param*) const: Assertion `item->maybe_null' failed.
      190203 13:24:11 [ERROR] mysqld got signal 6 ;
       
      #7  0x00007fab437eeee2 in __assert_fail () from /lib/x86_64-linux-gnu/libc.so.6
      #8  0x0000563abbdbc98f in Type_handler_temporal_result::make_sort_key (this=0x563abd2514c0 <type_handler_time2>, to=0x7fab2c09c610 '\245' <repeats 136 times>, "h4z\025", '\217' <repeats 12 times>, "\321", item=0x7fab2c014fc0, sort_field=0x7fab2c017dd0, param=0x7fab3d993850) at /data/src/10.3/sql/filesort.cc:1068
      #9  0x0000563abbdbcde7 in make_sortkey (param=0x7fab3d993850, to=0x7fab2c09c610 '\245' <repeats 136 times>, "h4z\025", '\217' <repeats 12 times>, "\321", ref_pos=0x7fab2c00e8e8 "") at /data/src/10.3/sql/filesort.cc:1172
      #10 0x0000563abbdbbf34 in find_all_keys (thd=0x7fab2c000b00, param=0x7fab3d993850, select=0x7fab2c0174f0, fs_info=0x7fab2c09c290, buffpek_pointers=0x7fab3d993a50, tempfile=0x7fab3d9938e0, pq=0x0, found_rows=0x7fab2c09c470) at /data/src/10.3/sql/filesort.cc:844
      #11 0x0000563abbdba1fa in filesort (thd=0x7fab2c000b00, table=0x7fab2c00db70, filesort=0x7fab2c0176c0, tracker=0x7fab2c017d50, join=0x7fab2c015988, first_table_bit=1) at /data/src/10.3/sql/filesort.cc:278
      #12 0x0000563abbb46419 in create_sort_index (thd=0x7fab2c000b00, join=0x7fab2c015988, tab=0x7fab2c016ba0, fsort=0x7fab2c0176c0) at /data/src/10.3/sql/sql_select.cc:22558
      #13 0x0000563abbb40b5e in st_join_table::sort_table (this=0x7fab2c016ba0) at /data/src/10.3/sql/sql_select.cc:20371
      #14 0x0000563abbb40772 in join_init_read_record (tab=0x7fab2c016ba0) at /data/src/10.3/sql/sql_select.cc:20312
      #15 0x0000563abbb3e5f0 in sub_select (join=0x7fab2c015988, join_tab=0x7fab2c016ba0, end_of_records=false) at /data/src/10.3/sql/sql_select.cc:19393
      #16 0x0000563abbb3db8c in do_select (join=0x7fab2c015988, procedure=0x0) at /data/src/10.3/sql/sql_select.cc:18936
      #17 0x0000563abbb16783 in JOIN::exec_inner (this=0x7fab2c015988) at /data/src/10.3/sql/sql_select.cc:4040
      #18 0x0000563abbb15bc4 in JOIN::exec (this=0x7fab2c015988) at /data/src/10.3/sql/sql_select.cc:3834
      #19 0x0000563abbb16e64 in mysql_select (thd=0x7fab2c000b00, tables=0x7fab2c015140, wild_num=0, fields=..., conds=0x0, og_num=1, order=0x7fab2c015838, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x7fab2c015960, unit=0x7fab2c0049b0, select_lex=0x7fab2c005120) at /data/src/10.3/sql/sql_select.cc:4239
      #20 0x0000563abbb08d8a in handle_select (thd=0x7fab2c000b00, lex=0x7fab2c0048e8, result=0x7fab2c015960, setup_tables_done_option=0) at /data/src/10.3/sql/sql_select.cc:385
      #21 0x0000563abbad37c2 in execute_sqlcom_select (thd=0x7fab2c000b00, all_tables=0x7fab2c015140) at /data/src/10.3/sql/sql_parse.cc:6548
      #22 0x0000563abbac9e33 in mysql_execute_command (thd=0x7fab2c000b00) at /data/src/10.3/sql/sql_parse.cc:3769
      #23 0x0000563abbad777b in mysql_parse (thd=0x7fab2c000b00, rawbuf=0x7fab2c014cd8 "SELECT GREATEST('9999', t) FROM t1 ORDER BY 1", length=45, parser_state=0x7fab3d9955f0, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:8092
      #24 0x0000563abbac492f in dispatch_command (command=COM_QUERY, thd=0x7fab2c000b00, packet=0x7fab2c126131 "", packet_length=45, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:1851
      #25 0x0000563abbac3353 in do_command (thd=0x7fab2c000b00) at /data/src/10.3/sql/sql_parse.cc:1396
      #26 0x0000563abbc2b47a in do_handle_one_connection (connect=0x563abf5ff870) at /data/src/10.3/sql/sql_connect.cc:1402
      #27 0x0000563abbc2b1fe in handle_one_connection (arg=0x563abf5ff870) at /data/src/10.3/sql/sql_connect.cc:1308
      #28 0x0000563abc0c5b4f in pfs_spawn_thread (arg=0x563abf64c490) at /data/src/10.3/storage/perfschema/pfs.cc:1862
      #29 0x00007fab454c5494 in start_thread (arg=0x7fab3d996700) at pthread_create.c:333
      #30 0x00007fab438ab93f in clone () from /lib/x86_64-linux-gnu/libc.so.6
      

      Couldn't reproduce on 10.2 or 10.4.
      No obvious effect on a non-debug build, apart from returning four warnings about incorrect time value for 2 rows in the table:

      SELECT GREATEST('9999', t) FROM t1 ORDER BY 1;
      GREATEST('9999', t)
      NULL
      NULL
      Warnings:
      Warning	1292	Truncated incorrect time value: '9999'
      Warning	1292	Truncated incorrect time value: '9999'
      Warning	1292	Truncated incorrect time value: '9999'
      Warning	1292	Truncated incorrect time value: '9999'
      

        Attachments

          Activity

            People

            • Assignee:
              bar Alexander Barkov
              Reporter:
              elenst Elena Stepanova
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: