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

Assertion `fixed' failed in Item_func_hybrid_field_type / Frame_positional_cursor

    XMLWordPrintable

Details

    Description

      The test case is not very meaningful, but on the other hand the variety of affected data types increases with new development: in older versions it's only GIS, then INET6, then INET4. Maybe at some point among them there will be a data type which makes the use case practical.

      CREATE TABLE t (a INT, b POINT);
      INSERT INTO t VALUES (1,POINT(0,0)),(2,POINT(0,0));
      SELECT NTH_VALUE(a,b) OVER () FROM t;
       
      # Cleanup
      DROP TABLE t;
      

      10.3 55a53949

      mysqld: /data/src/10.3/sql/item_func.h:571: virtual longlong Item_func_hybrid_field_type::val_int(): Assertion `fixed' failed.
      230509  2:01:37 [ERROR] mysqld got signal 6 ;
       
      #9  0x00007f1c4e833df2 in __GI___assert_fail (assertion=0x556f38dab6a0 "fixed", file=0x556f38dabb00 "/data/src/10.3/sql/item_func.h", line=571, function=0x556f38dabcc0 "virtual longlong Item_func_hybrid_field_type::val_int()") at ./assert/assert.c:101
      #10 0x0000556f3704c868 in Item_func_hybrid_field_type::val_int (this=0x62b000004590) at /data/src/10.3/sql/item_func.h:571
      #11 0x0000556f375b3e57 in Frame_positional_cursor::save_offset_value (this=0x62b000004668) at /data/src/10.3/sql/sql_window.cc:2384
      #12 0x0000556f375b356c in Frame_positional_cursor::pre_next_partition (this=0x62b000004668, rownum=0) at /data/src/10.3/sql/sql_window.cc:2307
      #13 0x0000556f375af360 in Cursor_manager::notify_cursors_partition_changed (this=0x6030000129d0, rownum=0) at /data/src/10.3/sql/sql_window.cc:1219
      #14 0x0000556f375aa620 in compute_window_func (thd=0x62a000060208, window_functions=..., cursor_managers=..., tbl=0x622000022928, filesort_result=0x615000012000) at /data/src/10.3/sql/sql_window.cc:2901
      #15 0x0000556f375aae3c in Window_func_runner::exec (this=0x62b000003990, thd=0x62a000060208, tbl=0x622000022928, filesort_result=0x615000012000) at /data/src/10.3/sql/sql_window.cc:3024
      #16 0x0000556f375ab088 in Window_funcs_sort::exec (this=0x62b000003988, join=0x62b0000010a8, keep_filesort_result=true) at /data/src/10.3/sql/sql_window.cc:3052
      #17 0x0000556f375abed5 in Window_funcs_computation::exec (this=0x62b000003960, join=0x62b0000010a8, keep_last_filesort_result=true) at /data/src/10.3/sql/sql_window.cc:3179
      #18 0x0000556f371f5fbc in AGGR_OP::end_send (this=0x62b0000036d0) at /data/src/10.3/sql/sql_select.cc:28123
      #19 0x0000556f371b6ed6 in sub_select_postjoin_aggr (join=0x62b0000010a8, join_tab=0x62b0000029b0, end_of_records=true) at /data/src/10.3/sql/sql_select.cc:19668
      #20 0x0000556f371b7844 in sub_select (join=0x62b0000010a8, join_tab=0x62b000002620, end_of_records=true) at /data/src/10.3/sql/sql_select.cc:19903
      #21 0x0000556f371b60ef in do_select (join=0x62b0000010a8, procedure=0x0) at /data/src/10.3/sql/sql_select.cc:19492
      #22 0x0000556f37149da5 in JOIN::exec_inner (this=0x62b0000010a8) at /data/src/10.3/sql/sql_select.cc:4190
      #23 0x0000556f37147750 in JOIN::exec (this=0x62b0000010a8) at /data/src/10.3/sql/sql_select.cc:3984
      #24 0x0000556f3714b0e2 in mysql_select (thd=0x62a000060208, tables=0x62b0000008d8, wild_num=0, fields=..., conds=0x0, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2147748608, result=0x62b000001078, unit=0x62a0000640c0, select_lex=0x62a000064880) at /data/src/10.3/sql/sql_select.cc:4393
      #25 0x0000556f3712105b in handle_select (thd=0x62a000060208, lex=0x62a000064000, result=0x62b000001078, setup_tables_done_option=0) at /data/src/10.3/sql/sql_select.cc:372
      #26 0x0000556f370956e6 in execute_sqlcom_select (thd=0x62a000060208, all_tables=0x62b0000008d8) at /data/src/10.3/sql/sql_parse.cc:6340
      #27 0x0000556f370834b7 in mysql_execute_command (thd=0x62a000060208) at /data/src/10.3/sql/sql_parse.cc:3871
      #28 0x0000556f3709f180 in mysql_parse (thd=0x62a000060208, rawbuf=0x62b000000228 "SELECT NTH_VALUE(a,b) OVER () FROM t", length=36, parser_state=0x7f1c458cb9b0, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:7855
      #29 0x0000556f37075faf in dispatch_command (command=COM_QUERY, thd=0x62a000060208, packet=0x6290000dc209 "", packet_length=36, is_com_multi=false, is_next_command=false) at /data/src/10.3/sql/sql_parse.cc:1852
      #30 0x0000556f37072b47 in do_command (thd=0x62a000060208) at /data/src/10.3/sql/sql_parse.cc:1398
      #31 0x0000556f3743af5c in do_handle_one_connection (connect=0x6080000006a8) at /data/src/10.3/sql/sql_connect.cc:1404
      #32 0x0000556f3743a889 in handle_one_connection (arg=0x6080000006a8) at /data/src/10.3/sql/sql_connect.cc:1309
      #33 0x0000556f38a21bd5 in pfs_spawn_thread (arg=0x615000003008) at /data/src/10.3/storage/perfschema/pfs.cc:1869
      #34 0x00007f1c4e887fd4 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:442
      

      Reproducible with MyISAM, InnoDB, Aria on debug builds.
      Non-debug builds return ER_ILLEGAL_PARAMETER_DATA_TYPES2_FOR_OPERATION as probably meant to.

      Attachments

        Activity

          People

            sanja Oleksandr Byelkin
            elenst Elena Stepanova
            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.