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

Assertion `thd->is_error() || kill_errno || thd->killed == ABORT_QUERY' failed in ha_rows filesort

Details

    Description

      SET sql_mode=STRICT_TRANS_TABLES;
       
      CREATE TABLE t0 (i INT) ENGINE=MyISAM;
      CREATE VIEW v1 AS SELECT * FROM t0;
      CREATE VIEW v2 AS SELECT * FROM v1;
      DROP VIEW IF EXISTS v1;
       
      CREATE TABLE t1 (i INT) ENGINE=MyISAM;
      INSERT INTO t1 SELECT TABLE_ROWS FROM information_schema.tables ORDER BY TABLE_ROWS;

      Stack trace from 5.5 revno 4433

      5.5/sql/filesort.cc:335: ha_rows filesort(THD*, TABLE*, SORT_FIELD*, uint, SQL_SELECT*, ha_rows, bool, ha_rows*): Assertion `thd->is_error() || kill_errno || thd->killed == ABORT_QUERY' failed.
      150214  0:42:17 [ERROR] mysqld got signal 6 ;
       
      #6  0x00007f502895d311 in *__GI___assert_fail (assertion=0xe06a78 "thd->is_error() || kill_errno || thd->killed == ABORT_QUERY", file=<optimized out>, line=335, function=0xe075c0 "ha_rows filesort(THD*, TABLE*, SORT_FIELD*, uint, SQL_SELECT*, ha_rows, bool, ha_rows*)") at assert.c:81
      #7  0x00000000007e3874 in filesort (thd=0x7f5024550060, table=0x7f5023569078, sortorder=0x7f502377ee68, s_length=1, select=0x7f502354e078, max_rows=18446744073709551615, sort_positions=false, examined_rows=0x7f5023fb49d8) at 5.5/sql/filesort.cc:335
      #8  0x0000000000694ace in create_sort_index (thd=0x7f5024550060, join=0x7f5023534a58, order=0x7f5023688008, filesort_limit=18446744073709551615, select_limit=18446744073709551615, is_order_by=false) at 5.5/sql/sql_select.cc:19859
      #9  0x000000000066ba7e in JOIN::exec (this=0x7f5023534a58) at 5.5/sql/sql_select.cc:2843
      #10 0x000000000066c499 in mysql_select (thd=0x7f5024550060, rref_pointer_array=0x7f5024553cd0, tables=0x7f5023687918, wild_num=0, fields=..., conds=0x0, og_num=1, order=0x7f5023688008, group=0x0, having=0x0, proc_param=0x0, select_options=4026796800, result=0x7f5023688fa8, unit=0x7f5024553380, select_lex=0x7f5024553a60) at 5.5/sql/sql_select.cc:3094
      #11 0x0000000000662f69 in handle_select (thd=0x7f5024550060, lex=0x7f50245532d0, result=0x7f5023688fa8, setup_tables_done_option=1073741824) at 5.5/sql/sql_select.cc:319
      #12 0x000000000063735d in mysql_execute_command (thd=0x7f5024550060) at 5.5/sql/sql_parse.cc:3060
      #13 0x000000000063ec8e in mysql_parse (thd=0x7f5024550060, rawbuf=0x7f5023687078 "INSERT INTO t1 SELECT TABLE_ROWS FROM information_schema.tables ORDER BY TABLE_ROWS", length=83, parser_state=0x7f5023fb5620) at 5.5/sql/sql_parse.cc:5909
      #14 0x00000000006328d1 in dispatch_command (command=COM_QUERY, thd=0x7f5024550060, packet=0x7f5024607061 "INSERT INTO t1 SELECT TABLE_ROWS FROM information_schema.tables ORDER BY TABLE_ROWS", packet_length=83) at 5.5/sql/sql_parse.cc:1079
      #15 0x0000000000631a5d in do_command (thd=0x7f5024550060) at 5.5/sql/sql_parse.cc:793
      #16 0x00000000007340ea in do_handle_one_connection (thd_arg=0x7f5024550060) at 5.5/sql/sql_connect.cc:1266
      #17 0x0000000000733ba9 in handle_one_connection (arg=0x7f5024550060) at 5.5/sql/sql_connect.cc:1181
      #18 0x0000000000b6c2cd in pfs_spawn_thread (arg=0x7f5024571ca0) at 5.5/storage/perfschema/pfs.cc:1015
      #19 0x00007f502a758b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
      #20 0x00007f5028a0e70d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
       
      Query (0x7f5023687078): INSERT INTO t1 SELECT TABLE_ROWS FROM information_schema.tables ORDER BY TABLE_ROWS
      Connection ID (thread ID): 2
      Status: KILL_BAD_DATA

      I'm marking it as upstream-fixed, because there was a similar assertion failure https://bugs.mysql.com/bug.php?id=74493 fixed in 5.7.5, and the test case above also crashes the server on 5.6 but not on 5.7.

      Attachments

        Issue Links

          Activity

            elenst Elena Stepanova created issue -
            elenst Elena Stepanova made changes -
            Field Original Value New Value
            Description {code:sql}
            SET sql_mode=STRICT_TRANS_TABLES;

            CREATE TABLE t0 (i INT) ENGINE=MyISAM;
            CREATE VIEW v1 AS SELECT * FROM t0;
            CREATE VIEW v2 AS SELECT * FROM v1;
            DROP VIEW IF EXISTS v1;

            CREATE TABLE t1 (i INT) ENGINE=MyISAM;
            INSERT INTO t1 SELECT TABLE_ROWS FROM information_schema.tables ORDER BY TABLE_ROWS;
            {code}
            {noformat:title=Stack trace from 5.5 revno 4433}
            5.5/sql/filesort.cc:335: ha_rows filesort(THD*, TABLE*, SORT_FIELD*, uint, SQL_SELECT*, ha_rows, bool, ha_rows*): Assertion `thd->is_error() || kill_errno || thd->killed == ABORT_QUERY' failed.
            150214 0:42:17 [ERROR] mysqld got signal 6 ;

            #6 0x00007f502895d311 in *__GI___assert_fail (assertion=0xe06a78 "thd->is_error() || kill_errno || thd->killed == ABORT_QUERY", file=<optimized out>, line=335, function=0xe075c0 "ha_rows filesort(THD*, TABLE*, SORT_FIELD*, uint, SQL_SELECT*, ha_rows, bool, ha_rows*)") at assert.c:81
            #7 0x00000000007e3874 in filesort (thd=0x7f5024550060, table=0x7f5023569078, sortorder=0x7f502377ee68, s_length=1, select=0x7f502354e078, max_rows=18446744073709551615, sort_positions=false, examined_rows=0x7f5023fb49d8) at 5.5/sql/filesort.cc:335
            #8 0x0000000000694ace in create_sort_index (thd=0x7f5024550060, join=0x7f5023534a58, order=0x7f5023688008, filesort_limit=18446744073709551615, select_limit=18446744073709551615, is_order_by=false) at 5.5/sql/sql_select.cc:19859
            #9 0x000000000066ba7e in JOIN::exec (this=0x7f5023534a58) at 5.5/sql/sql_select.cc:2843
            #10 0x000000000066c499 in mysql_select (thd=0x7f5024550060, rref_pointer_array=0x7f5024553cd0, tables=0x7f5023687918, wild_num=0, fields=..., conds=0x0, og_num=1, order=0x7f5023688008, group=0x0, having=0x0, proc_param=0x0, select_options=4026796800, result=0x7f5023688fa8, unit=0x7f5024553380, select_lex=0x7f5024553a60) at 5.5/sql/sql_select.cc:3094
            #11 0x0000000000662f69 in handle_select (thd=0x7f5024550060, lex=0x7f50245532d0, result=0x7f5023688fa8, setup_tables_done_option=1073741824) at 5.5/sql/sql_select.cc:319
            #12 0x000000000063735d in mysql_execute_command (thd=0x7f5024550060) at 5.5/sql/sql_parse.cc:3060
            #13 0x000000000063ec8e in mysql_parse (thd=0x7f5024550060, rawbuf=0x7f5023687078 "INSERT INTO t1 SELECT TABLE_ROWS FROM information_schema.tables ORDER BY TABLE_ROWS", length=83, parser_state=0x7f5023fb5620) at 5.5/sql/sql_parse.cc:5909
            #14 0x00000000006328d1 in dispatch_command (command=COM_QUERY, thd=0x7f5024550060, packet=0x7f5024607061 "INSERT INTO t1 SELECT TABLE_ROWS FROM information_schema.tables ORDER BY TABLE_ROWS", packet_length=83) at 5.5/sql/sql_parse.cc:1079
            #15 0x0000000000631a5d in do_command (thd=0x7f5024550060) at 5.5/sql/sql_parse.cc:793
            #16 0x00000000007340ea in do_handle_one_connection (thd_arg=0x7f5024550060) at 5.5/sql/sql_connect.cc:1266
            #17 0x0000000000733ba9 in handle_one_connection (arg=0x7f5024550060) at 5.5/sql/sql_connect.cc:1181
            #18 0x0000000000b6c2cd in pfs_spawn_thread (arg=0x7f5024571ca0) at 5.5/storage/perfschema/pfs.cc:1015
            #19 0x00007f502a758b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
            #20 0x00007f5028a0e70d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
            {noformat}

            I'm marking it as upstream-fixed, because there was a similar assertion failure https://bugs.mysql.com/bug.php?id=74493 fixed in 5.7.5, and the test case above also crashes the server on 5.6 but not on 5.7.
            {code:sql}
            SET sql_mode=STRICT_TRANS_TABLES;

            CREATE TABLE t0 (i INT) ENGINE=MyISAM;
            CREATE VIEW v1 AS SELECT * FROM t0;
            CREATE VIEW v2 AS SELECT * FROM v1;
            DROP VIEW IF EXISTS v1;

            CREATE TABLE t1 (i INT) ENGINE=MyISAM;
            INSERT INTO t1 SELECT TABLE_ROWS FROM information_schema.tables ORDER BY TABLE_ROWS;
            {code}
            {noformat:title=Stack trace from 5.5 revno 4433}
            5.5/sql/filesort.cc:335: ha_rows filesort(THD*, TABLE*, SORT_FIELD*, uint, SQL_SELECT*, ha_rows, bool, ha_rows*): Assertion `thd->is_error() || kill_errno || thd->killed == ABORT_QUERY' failed.
            150214 0:42:17 [ERROR] mysqld got signal 6 ;

            #6 0x00007f502895d311 in *__GI___assert_fail (assertion=0xe06a78 "thd->is_error() || kill_errno || thd->killed == ABORT_QUERY", file=<optimized out>, line=335, function=0xe075c0 "ha_rows filesort(THD*, TABLE*, SORT_FIELD*, uint, SQL_SELECT*, ha_rows, bool, ha_rows*)") at assert.c:81
            #7 0x00000000007e3874 in filesort (thd=0x7f5024550060, table=0x7f5023569078, sortorder=0x7f502377ee68, s_length=1, select=0x7f502354e078, max_rows=18446744073709551615, sort_positions=false, examined_rows=0x7f5023fb49d8) at 5.5/sql/filesort.cc:335
            #8 0x0000000000694ace in create_sort_index (thd=0x7f5024550060, join=0x7f5023534a58, order=0x7f5023688008, filesort_limit=18446744073709551615, select_limit=18446744073709551615, is_order_by=false) at 5.5/sql/sql_select.cc:19859
            #9 0x000000000066ba7e in JOIN::exec (this=0x7f5023534a58) at 5.5/sql/sql_select.cc:2843
            #10 0x000000000066c499 in mysql_select (thd=0x7f5024550060, rref_pointer_array=0x7f5024553cd0, tables=0x7f5023687918, wild_num=0, fields=..., conds=0x0, og_num=1, order=0x7f5023688008, group=0x0, having=0x0, proc_param=0x0, select_options=4026796800, result=0x7f5023688fa8, unit=0x7f5024553380, select_lex=0x7f5024553a60) at 5.5/sql/sql_select.cc:3094
            #11 0x0000000000662f69 in handle_select (thd=0x7f5024550060, lex=0x7f50245532d0, result=0x7f5023688fa8, setup_tables_done_option=1073741824) at 5.5/sql/sql_select.cc:319
            #12 0x000000000063735d in mysql_execute_command (thd=0x7f5024550060) at 5.5/sql/sql_parse.cc:3060
            #13 0x000000000063ec8e in mysql_parse (thd=0x7f5024550060, rawbuf=0x7f5023687078 "INSERT INTO t1 SELECT TABLE_ROWS FROM information_schema.tables ORDER BY TABLE_ROWS", length=83, parser_state=0x7f5023fb5620) at 5.5/sql/sql_parse.cc:5909
            #14 0x00000000006328d1 in dispatch_command (command=COM_QUERY, thd=0x7f5024550060, packet=0x7f5024607061 "INSERT INTO t1 SELECT TABLE_ROWS FROM information_schema.tables ORDER BY TABLE_ROWS", packet_length=83) at 5.5/sql/sql_parse.cc:1079
            #15 0x0000000000631a5d in do_command (thd=0x7f5024550060) at 5.5/sql/sql_parse.cc:793
            #16 0x00000000007340ea in do_handle_one_connection (thd_arg=0x7f5024550060) at 5.5/sql/sql_connect.cc:1266
            #17 0x0000000000733ba9 in handle_one_connection (arg=0x7f5024550060) at 5.5/sql/sql_connect.cc:1181
            #18 0x0000000000b6c2cd in pfs_spawn_thread (arg=0x7f5024571ca0) at 5.5/storage/perfschema/pfs.cc:1015
            #19 0x00007f502a758b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
            #20 0x00007f5028a0e70d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112

            Query (0x7f5023687078): INSERT INTO t1 SELECT TABLE_ROWS FROM information_schema.tables ORDER BY TABLE_ROWS
            Connection ID (thread ID): 2
            Status: KILL_BAD_DATA
            {noformat}


            I'm marking it as upstream-fixed, because there was a similar assertion failure https://bugs.mysql.com/bug.php?id=74493 fixed in 5.7.5, and the test case above also crashes the server on 5.6 but not on 5.7.
            serg Sergei Golubchik made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            serg Sergei Golubchik made changes -
            Status In Progress [ 3 ] Stalled [ 10000 ]
            serg Sergei Golubchik made changes -
            Component/s Optimizer [ 10200 ]
            Fix Version/s 10.0.18 [ 18702 ]
            Fix Version/s 10.1.5 [ 18813 ]
            Fix Version/s 5.5.43 [ 18601 ]
            Fix Version/s 5.5 [ 15800 ]
            Fix Version/s 10.0 [ 16000 ]
            Resolution Fixed [ 1 ]
            Status Stalled [ 10000 ] Closed [ 6 ]
            ratzpo Rasmus Johansson (Inactive) made changes -
            Workflow MariaDB v2 [ 59641 ] MariaDB v3 [ 63114 ]
            alice Alice Sherepa made changes -
            serg Sergei Golubchik made changes -
            Workflow MariaDB v3 [ 63114 ] MariaDB v4 [ 148803 ]

            People

              serg Sergei Golubchik
              elenst Elena Stepanova
              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.