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

Assertion `thd->transaction.stmt.is_empty() || thd->in_sub_stmt || (thd->state_flags & Open_tables_state::BACKUPS_AVAIL)' failed upon FLUSH TABLES FOR EXPORT with MEMORY table

    XMLWordPrintable

    Details

      Description

      Note: We have plenty of these assertions, but at the moment all related to FLUSH / MEMORY without killing a connection have been closed. Also, this one seems 10.1-specific.

      --source include/have_innodb.inc
       
      CREATE TABLE t1 (a INT) ENGINE=InnoDB;
      CREATE TABLE t2 (b INT) ENGINE=MEMORY;
      --error ER_ILLEGAL_HA
      FLUSH TABLES t1, t2 FOR EXPORT;
       
      # Cleanup
      DROP TABLE t1, t2;
      

      10.1 345aaca1

      mysqld: /data/src/10.1/sql/sql_base.cc:937: void close_thread_tables(THD*): Assertion `thd->transaction.stmt.is_empty() || thd->in_sub_stmt || (thd->state_flags & Open_tables_state::BACKUPS_AVAIL)' failed.
      200310 17:41:27 [ERROR] mysqld got signal 6 ;
       
      #7  0x00007f4c89f00f12 in __GI___assert_fail (assertion=0x55f1bd5705e8 "thd->transaction.stmt.is_empty() || thd->in_sub_stmt || (thd->state_flags & Open_tables_state::BACKUPS_AVAIL)", file=0x55f1bd570268 "/data/src/10.1/sql/sql_base.cc", line=937, function=0x55f1bd572140 <close_thread_tables(THD*)::__PRETTY_FUNCTION__> "void close_thread_tables(THD*)") at assert.c:101
      #8  0x000055f1bcb7cc10 in close_thread_tables (thd=0x7f4c7def0070) at /data/src/10.1/sql/sql_base.cc:936
      #9  0x000055f1bcd543f5 in flush_tables_with_read_lock (thd=0x7f4c7def0070, all_tables=0x7f4c740f6170) at /data/src/10.1/sql/sql_reload.cc:605
      #10 0x000055f1bcbeddae in mysql_execute_command (thd=0x7f4c7def0070) at /data/src/10.1/sql/sql_parse.cc:4576
      #11 0x000055f1bcbf5761 in mysql_parse (thd=0x7f4c7def0070, rawbuf=0x7f4c740f6088 "FLUSH TABLES t1, t2 FOR EXPORT", length=30, parser_state=0x7f4c8bb201e0) at /data/src/10.1/sql/sql_parse.cc:7209
      #12 0x000055f1bcbe493b in dispatch_command (command=COM_QUERY, thd=0x7f4c7def0070, packet=0x7f4c82e77071 "FLUSH TABLES t1, t2 FOR EXPORT", packet_length=30) at /data/src/10.1/sql/sql_parse.cc:1499
      #13 0x000055f1bcbe36f9 in do_command (thd=0x7f4c7def0070) at /data/src/10.1/sql/sql_parse.cc:1131
      #14 0x000055f1bcd20ae3 in do_handle_one_connection (thd_arg=0x7f4c7def0070) at /data/src/10.1/sql/sql_connect.cc:1331
      #15 0x000055f1bcd20814 in handle_one_connection (arg=0x7f4c7def0070) at /data/src/10.1/sql/sql_connect.cc:1242
      #16 0x000055f1bd14676e in pfs_spawn_thread (arg=0x7f4c7de45870) at /data/src/10.1/storage/perfschema/pfs.cc:1868
      #17 0x00007f4c8b7af4a4 in start_thread (arg=0x7f4c8bb21700) at pthread_create.c:456
      #18 0x00007f4c89fbdd0f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97
      

      Not reproducible on 10.2+.
      No visible effect on a non-debug build.

        Attachments

          Activity

            People

            Assignee:
            Unassigned
            Reporter:
            elenst Elena Stepanova
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated: