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

Assertion `!((c.prtype ^ o->prtype) & ~(256U | (16384U|32768U)))' failed in dict_table_t::instant_column

    XMLWordPrintable

    Details

      Description

      --source include/have_innodb.inc
       
      CREATE TABLE t1 (PK INT, f VARCHAR(8), PRIMARY KEY (pk)) ENGINE=InnoDB;
      ALTER TABLE t1 MODIFY f VARCHAR(256) FIRST;
       
      # Cleanup
      DROP TABLE t1;
      

      10.4 fb01193c

      mysqld: /data/src/10.4/storage/innobase/handler/handler0alter.cc:539: bool dict_table_t::instant_column(const dict_table_t&, const ulint*): Assertion `!((c.prtype ^ o->prtype) & ~(256U | (16384U|32768U)))' failed.
      190224 18:41:46 [ERROR] mysqld got signal 6 ;
       
      #7  0x00007f359676eee2 in __assert_fail () from /lib/x86_64-linux-gnu/libc.so.6
      #8  0x0000564baf6c140d in dict_table_t::instant_column (this=0x7f353c00dd58, table=..., col_map=0x7f353c15d018) at /data/src/10.4/storage/innobase/handler/handler0alter.cc:538
      #9  0x0000564baf6c40dd in ha_innobase_inplace_ctx::instant_column (this=0x7f353c016cb8) at /data/src/10.4/storage/innobase/handler/handler0alter.cc:1081
      #10 0x0000564baf6a99ca in innobase_instant_try (ha_alter_info=0x7f35902e4900, ctx=0x7f353c016cb8, altered_table=0x7f353c153460, table=0x7f353c1a2fb0, trx=0x7f359057f268) at /data/src/10.4/storage/innobase/handler/handler0alter.cc:5507
      #11 0x0000564baf6c7194 in commit_try_norebuild (ha_alter_info=0x7f35902e4900, ctx=0x7f353c016cb8, altered_table=0x7f353c153460, old_table=0x7f353c1a2fb0, trx=0x7f359057f268, table_name=0x7f353c1a1195 "t1") at /data/src/10.4/storage/innobase/handler/handler0alter.cc:10154
      #12 0x0000564baf6b90d8 in ha_innobase::commit_inplace_alter_table (this=0x7f353c1a3e18, altered_table=0x7f353c153460, ha_alter_info=0x7f35902e4900, commit=true) at /data/src/10.4/storage/innobase/handler/handler0alter.cc:10823
      #13 0x0000564baf33571e in handler::ha_commit_inplace_alter_table (this=0x7f353c1a3e18, altered_table=0x7f353c153460, ha_alter_info=0x7f35902e4900, commit=true) at /data/src/10.4/sql/handler.cc:4678
      #14 0x0000564baf0cbcff in mysql_inplace_alter_table (thd=0x7f353c000b00, table_list=0x7f353c0155b0, table=0x7f353c1a2fb0, altered_table=0x7f353c153460, ha_alter_info=0x7f35902e4900, inplace_supported=HA_ALTER_INPLACE_INSTANT, target_mdl_request=0x7f35902e4b30, alter_ctx=0x7f35902e50e0) at /data/src/10.4/sql/sql_table.cc:7692
      #15 0x0000564baf0d2373 in mysql_alter_table (thd=0x7f353c000b00, new_db=0x7f353c005290, new_name=0x7f353c005690, create_info=0x7f35902e5cd0, table_list=0x7f353c0155b0, alter_info=0x7f35902e5c10, order_num=0, order=0x0, ignore=false) at /data/src/10.4/sql/sql_table.cc:9919
      #16 0x0000564baf160922 in Sql_cmd_alter_table::execute (this=0x7f353c015d88, thd=0x7f353c000b00) at /data/src/10.4/sql/sql_alter.cc:499
      #17 0x0000564baeff1aca in mysql_execute_command (thd=0x7f353c000b00) at /data/src/10.4/sql/sql_parse.cc:6346
      #18 0x0000564baeff6c72 in mysql_parse (thd=0x7f353c000b00, rawbuf=0x7f353c0154a8 "ALTER TABLE t1 MODIFY f VARCHAR(256) FIRST", length=42, parser_state=0x7f35902e7180, is_com_multi=false, is_next_command=false) at /data/src/10.4/sql/sql_parse.cc:8157
      #19 0x0000564baefe2360 in dispatch_command (command=COM_QUERY, thd=0x7f353c000b00, packet=0x7f353c13a181 "ALTER TABLE t1 MODIFY f VARCHAR(256) FIRST", packet_length=42, is_com_multi=false, is_next_command=false) at /data/src/10.4/sql/sql_parse.cc:1829
      #20 0x0000564baefe0b34 in do_command (thd=0x7f353c000b00) at /data/src/10.4/sql/sql_parse.cc:1358
      #21 0x0000564baf15a837 in do_handle_one_connection (connect=0x564bb1938d10) at /data/src/10.4/sql/sql_connect.cc:1399
      #22 0x0000564baf15a5a8 in handle_one_connection (arg=0x564bb1938d10) at /data/src/10.4/sql/sql_connect.cc:1302
      #23 0x0000564baf651979 in pfs_spawn_thread (arg=0x564bb197eb80) at /data/src/10.4/storage/perfschema/pfs.cc:1862
      #24 0x00007f3598445494 in start_thread (arg=0x7f35902e8700) at pthread_create.c:333
      #25 0x00007f359682b93f in clone () from /lib/x86_64-linux-gnu/libc.so.6
      

      Not reproducible on 10.3.
      No obvious effect on a non-debug build.

      Note:
      When the same test case is run on a build with DDBUG_ASSERT_AS_PRINTF, two assertion failures are reported. The first one is apparently the same as above, just in a different form:

      Warning: assertion failed: !((c.prtype ^ o->prtype) & ~(DATA_NOT_NULL | DATA_VERSIONED)) at /data/src/10.4-bug/storage/innobase/handler/handler0alter.cc line 539
      

      and after that another one:

      10.4 31b65d3d

      Warning: assertion failed: !old || col->same_format(*old) at /data/src/10.4-bug/storage/innobase/handler/handler0alter.cc line 5598
      Attempting backtrace to find out the reason for the assert:
      stack_bottom = 0x0 thread_stack 0x49000
      mysys/stacktrace.c:270(my_print_stacktrace)[0x55ca9ef64269]
      handler/handler0alter.cc:5598(innobase_instant_try(Alter_inplace_info const*, ha_innobase_inplace_ctx*, TABLE const*, TABLE const*, trx_t*) [clone .isra.201])[0x55ca9e738bc9]
      handler/handler0alter.cc:10154(commit_try_norebuild)[0x55ca9ecbc71f]
      sql/sql_table.cc:7692(mysql_inplace_alter_table(THD*, TABLE_LIST*, TABLE*, TABLE*, Alter_inplace_info*, enum_alter_inplace_result, MDL_request*, Alter_table_ctx*) [clone .isra.168])[0x55ca9e73216c]
      sql/sql_table.cc:9919(mysql_alter_table(THD*, st_mysql_const_lex_string const*, st_mysql_const_lex_string const*, HA_CREATE_INFO*, TABLE_LIST*, Alter_info*, unsigned int, st_order*, bool))[0x55ca9e8cec49]
      sql/sql_alter.cc:499(Sql_cmd_alter_table::execute(THD*))[0x55ca9e922cb2]
      sql/sql_parse.cc:6346(mysql_execute_command(THD*))[0x55ca9e83182f]
      sql/sql_parse.cc:8174(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x55ca9e839610]
      sql/sql_parse.cc:1893(dispatch_command(enum_server_command, THD*, char*, unsigned int, bool, bool))[0x55ca9e83c2b5]
      sql/sql_parse.cc:1359(do_command(THD*))[0x55ca9e83d392]
      sql/sql_connect.cc:1399(do_handle_one_connection(CONNECT*))[0x55ca9e91fd7c]
      sql/sql_connect.cc:1304(handle_one_connection)[0x55ca9e91fee4]
      perfschema/pfs.cc:1865(pfs_spawn_thread)[0x55ca9ec810f4]
      nptl/pthread_create.c:333(start_thread)[0x7fa811b25494]
      x86_64/clone.S:99(clone)[0x7fa80ff0b93f]
      

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              marko Marko Mäkelä
              Reporter:
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: