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

Crash in instant ALTER TABLE after IMPORT TABLESPACE

    XMLWordPrintable

Details

    Description

      SET SESSION sql_mode = 'NO_ENGINE_SUBSTITUTION' ;
      SET DEFAULT_STORAGE_ENGINE= 'InnoDB' ;
      USE test ;
      CREATE TABLE `t1` (
      `col_int` int,
      `col_varchar_255` varchar(255),
      `col_text` text) ENGINE=innodb ;
      INSERT /*! IGNORE */ INTO t1 VALUES 
      (1028915200, 'c', 'image') ,
      (NULL, 'j', 'historic') ,
      (6, 'loyal', 'retreat') ,
      (NULL, 'depth', 'male') ,
      (1, 'squad', 'too') ,
      (-1846607872, 'roof', 'head') ,
      (NULL, 'o', 'turkey') ,
      (NULL, 'w', 'deal') ,
      (3, 'f', 'cousin') ,
      (-996605952, 'i', 'online') ;
      FLUSH TABLES t1 FOR EXPORT ;
      UNLOCK TABLES ;
      CREATE TABLE imp_t1 LIKE t1 ;
      ALTER TABLE imp_t1 DISCARD TABLESPACE ;
      'copy ibd file around'
      ALTER TABLE imp_t1 MODIFY COLUMN col_varchar_255 VARCHAR(255) FIRST ;
      ALTER TABLE imp_t1 DISCARD TABLESPACE ;
      Warnings:
      Warning 1814    Tablespace has been discarded for table `imp_t1`
      Warning 1812    Tablespace is missing for table 'test/imp_t1'
      ALTER TABLE imp_t1 IMPORT TABLESPACE ;
      Warnings:
      Warning 1810    IO Read error: (2, No such file or directory) Error opening './test/imp_t1.cfg', will attempt to import without schema verification
      ALTER TABLE imp_t1 MODIFY COLUMN col_int INT FIRST ;
      ALTER TABLE imp_t1 MODIFY COLUMN col_varchar_255 VARCHAR(255) FIRST ;
      ERROR HY000: Lost connection to server during query
      DROP TABLE t1;
      ERROR HY000: Server has gone away
       
      2021-07-14  4:26:54 4 [Note] InnoDB: Resuming purge
      2021-07-14  4:26:54 4 [Note] InnoDB: Sync to disk
      2021-07-14  4:26:54 4 [Note] InnoDB: Sync to disk - done!
      2021-07-14  4:26:54 4 [Note] InnoDB: Phase I - Update all pages
      2021-07-14  4:26:54 4 [Note] InnoDB: Sync to disk
      2021-07-14  4:26:54 4 [Note] InnoDB: Sync to disk - done!
      2021-07-14  4:26:54 4 [Note] InnoDB: Phase III - Flush changes to disk
      2021-07-14  4:26:54 4 [Note] InnoDB: Phase IV - Flush complete
      2021-07-14  4:26:54 4 [ERROR] [FATAL] InnoDB: Page old data size 418 new data size 408, page old max ins size 15828 new max ins size 15838
      210714  4:26:54 [ERROR] mysqld got signal 6 ;
      ...
      Query (0x7fb554010650): ALTER TABLE imp_t1 MODIFY COLUMN col_varchar_255 VARCHAR(255) FIRST
      Connection ID (thread ID): 4
      Status: NOT_KILLED
       
      Thread 1 (Thread 0x7fb581463700 (LWP 1597530)):
      #0  __pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ../sysdeps/unix/sysv/linux/pthread_kill.c:56
      #1  0x000055c312396c7f in my_write_core (sig=sig@entry=6) at /data/Server/10.6G/mysys/stacktrace.c:424
      #2  0x000055c311f16010 in handle_fatal_signal (sig=6) at /data/Server/10.6G/sql/signal_handler.cc:344
      #3  <signal handler called>
      #4  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
      #5  0x00007fb582e91859 in __GI_abort () at abort.c:79
      #6  0x000055c311bf1d2b in ib::fatal::~fatal (this=<optimized out>, __in_chrg=<optimized out>) at /data/Server/10.6G/storage/innobase/ut/ut0ut.cc:519
      #7  0x000055c311bf255f in btr_page_reorganize_low (index=0x7fb554073838, mtr=<optimized out>, cursor=<optimized out>, cursor=<optimized out>) at /data/Server/10.6G/storage/innobase/include/ut0ut.h:327
      #8  0x000055c31228366b in btr_page_reorganize (cursor=cursor@entry=0x7fb58145e2d8, index=index@entry=0x7fb554073838, mtr=mtr@entry=0x7fb58145e640) at /data/Server/10.6G/storage/innobase/btr/btr0btr.cc:1609
      #9  0x000055c3122a2da1 in btr_cur_pessimistic_update (flags=flags@entry=10, cursor=cursor@entry=0x7fb58145e2d0, offsets=offsets@entry=0x7fb58145e2b8, offsets_heap=offsets_heap@entry=0x7fb58145e2c0, entry_heap=<optimized out>, big_rec=big_rec@entry=0x7fb58145e2c8, update=<optimized out>, cmpl_info=1, thr=0x7fb554055878, trx_id=40, mtr=0x7fb58145e640) at /data/Server/10.6G/storage/innobase/btr/btr0cur.cc:5134
      #10 0x000055c3121b1d70 in innobase_instant_try (altered_table=<optimized out>, altered_table=<optimized out>, table=<optimized out>, trx=<optimized out>, ctx=<optimized out>, ha_alter_info=<optimized out>) at /data/Server/10.6G/storage/innobase/handler/handler0alter.cc:5933
      #11 commit_try_norebuild (ha_alter_info=ha_alter_info@entry=0x7fb58145eda0, ctx=ctx@entry=0x7fb554011f88, altered_table=altered_table@entry=0x7fb58145ee60, old_table=<optimized out>, trx=trx@entry=0x7fb58285a1f8, table_name=<optimized out>) at /data/Server/10.6G/storage/innobase/handler/handler0alter.cc:10363
      #12 0x000055c3121a77c2 in ha_innobase::commit_inplace_alter_table (this=<optimized out>, altered_table=<optimized out>, ha_alter_info=<optimized out>, commit=<optimized out>) at /data/Server/10.6G/storage/innobase/handler/handler0alter.cc:10999
      #13 0x000055c311dac3d9 in mysql_inplace_alter_table (target_mdl_request=0x7fb58145f720, alter_ctx=0x7fb581460870, trigger_param=0x7fb58145f230, ddl_log_state=0x7fb58145ed40, ha_alter_info=0x7fb58145eda0, altered_table=0x7fb58145ee60, table=0x7fb554082028, table_list=0x7fb554010780, thd=0x7fb554000c58) at /data/Server/10.6G/sql/sql_table.cc:7439
      #14 mysql_alter_table (thd=thd@entry=0x7fb554000c58, new_db=new_db@entry=0x7fb5540054a8, new_name=new_name@entry=0x7fb5540058c0, create_info=create_info@entry=0x7fb581461670, table_list=<optimized out>, table_list@entry=0x7fb554010780, alter_info=alter_info@entry=0x7fb581461580, order_num=0, order=0x0, ignore=false, if_exists=false) at /data/Server/10.6G/sql/sql_table.cc:10202
      #15 0x000055c311e0a4da in Sql_cmd_alter_table::execute (this=<optimized out>, thd=0x7fb554000c58) at /data/Server/10.6G/sql/structs.h:568
      #16 0x000055c311d0b626 in mysql_execute_command (thd=0x7fb554000c58, is_called_from_prepared_stmt=<optimized out>) at /data/Server/10.6G/sql/sql_parse.cc:5995
      #17 0x000055c311cfc446 in mysql_parse (rawbuf=<optimized out>, length=<optimized out>, parser_state=<optimized out>, thd=0x7fb554000c58) at /data/Server/10.6G/sql/sql_parse.cc:8028
      #18 mysql_parse (thd=0x7fb554000c58, rawbuf=<optimized out>, length=<optimized out>, parser_state=<optimized out>) at /data/Server/10.6G/sql/sql_parse.cc:7950
      #19 0x000055c311d07e12 in dispatch_command (command=COM_QUERY, thd=0x7fb554000c58, packet=<optimized out>, packet_length=<optimized out>, blocking=<optimized out>) at /data/Server/10.6G/sql/sql_class.h:1340
      #20 0x000055c311d09a98 in do_command (thd=0x7fb554000c58, blocking=blocking@entry=true) at /data/Server/10.6G/sql/sql_parse.cc:1406
      #21 0x000055c311e05837 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55c314e0ea58, put_in_cache=put_in_cache@entry=true) at /data/Server/10.6G/sql/sql_connect.cc:1410
      #22 0x000055c311e05b2d in handle_one_connection (arg=0x55c314e0ea58) at /data/Server/10.6G/sql/sql_connect.cc:1312
      #23 0x00007fb5833ba609 in start_thread (arg=<optimized out>) at pthread_create.c:477
      #24 0x00007fb582f8e293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
       
      origin/10.6, 10.6 315380a4d16ddb16461d906a23be341e354c30ed 2021-07-01T19:06:53+03:00
       
      origin/bb-10.6-MDEV-26131 ffc41e1cf56809f82e97daad4869fecac4b46fed 2021-07-13T23:31:16+05:30  
      which fixes MDEV-26131 shows the same problem.
      

      Attachments

        Issue Links

          Activity

            People

              marko Marko Mäkelä
              mleich Matthias Leich
              Votes:
              3 Vote for this issue
              Watchers:
              10 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.