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

Assertion `index->table->not_redundant()' failed in ulint row_merge_buf_add(row_merge_buf_t*, [..], TABLE*, trx_t*, const col_collations*)

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Duplicate
    • 10.4(EOL), 10.5, 10.6, 10.8(EOL), 10.9(EOL), 10.10(EOL), 10.11, 11.0(EOL), 11.1(EOL)
    • N/A
    • None

    Description

      SET GLOBAL innodb_default_row_format=0;
      CREATE TABLE t (pk INT,c CHAR(255),c2 CHAR(255),c3 CHAR(255),c4 CHAR(255),c5 CHAR(255),c6 CHAR(255),c7 CHAR(255),c8 CHAR(255),KEY(pk)) CHARACTER SET utf32 ENGINE=InnoDB;
      CREATE TEMPORARY TABLE t (c CHAR(100)) ENGINE=InnoDB;
      DROP TABLE t;
      INSERT INTO t (c) VALUES (1);
      ALTER TABLE t ENGINE=InnoDB;
      

      Leads to:

      10.11.3 d84a2826290d9676faebba0849d1b9fb7f5efcd8 (Debug)

      mariadbd: /test/10.11_dbg/storage/innobase/row/row0merge.cc:763: ulint row_merge_buf_add(row_merge_buf_t*, dict_index_t*, const dict_table_t*, const dict_table_t*, fts_psort_t*, dtuple_t*, const row_ext_t*, bool, doc_id_t*, mem_heap_t*, dberr_t*, mem_heap_t**, TABLE*, trx_t*, const col_collations*): Assertion `index->table->not_redundant()' failed.
      

      10.11.3 d84a2826290d9676faebba0849d1b9fb7f5efcd8 (Debug)

      Core was generated by `/test/MD040423-mariadb-10.11.3-linux-x86_64-dbg/bin/mariadbd --no-defaults --co'.
      Program terminated with signal SIGABRT, Aborted.
      #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
      [Current thread is 1 (Thread 0x152164050700 (LWP 3934791))]
      (gdb) bt
      #0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
      #1  0x000015217b9f8859 in __GI_abort () at abort.c:79
      #2  0x000015217b9f8729 in __assert_fail_base (fmt=0x15217bb8e588 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", assertion=0x55a963379a7f "index->table->not_redundant()", file=0x55a96338b170 "/test/10.11_dbg/storage/innobase/row/row0merge.cc", line=763, function=<optimized out>) at assert.c:92
      #3  0x000015217ba09fd6 in __GI___assert_fail (assertion=assertion@entry=0x55a963379a7f "index->table->not_redundant()", file=file@entry=0x55a96338b170 "/test/10.11_dbg/storage/innobase/row/row0merge.cc", line=line@entry=763, function=function@entry=0x55a96338bf98 "ulint row_merge_buf_add(row_merge_buf_t*, dict_index_t*, const dict_table_t*, const dict_table_t*, fts_psort_t*, dtuple_t*, const row_ext_t*, bool, doc_id_t*, mem_heap_t*, dberr_t*, mem_heap_t**, TABL"...) at assert.c:101
      #4  0x000055a962cc55f5 in row_merge_buf_add (buf=buf@entry=0x15212008bfb0, fts_index=fts_index@entry=0x0, old_table=old_table@entry=0x1521200254b0, new_table=<optimized out>, psort_info=psort_info@entry=0x0, row=row@entry=0x152120246ec8, ext=<optimized out>, history_fts=<optimized out>, doc_id=<optimized out>, conv_heap=<optimized out>, err=<optimized out>, v_heap=<optimized out>, my_table=<optimized out>, trx=<optimized out>, col_collate=<optimized out>) at /test/10.11_dbg/storage/innobase/include/dict0mem.h:1879
      #5  0x000055a962cccb3b in row_merge_read_clustered_index (col_collate=0x0, allow_not_null=<optimized out>, eval_table=0x15216404beb0, crypt_block=0x0, pct_cost=<optimized out>, stage=0x152120027d80, tmpfd=0x15216404ace4, skip_pk_sort=<optimized out>, block=<optimized out>, sequence=@0x152120015768: {m_max_value = 0, m_increment = 0, m_offset = 0, m_next_value = 0, m_eof = true}, add_autoinc=18446744073709551615, col_map=0x15212008a500, add_v=0x0, defaults=0x0, n_index=2, key_numbers=0x15212008a3d8, files=0x15212008bef0, psort_info=0x0, fts_sort_idx=0x0, index=<optimized out>, online=true, new_table=<optimized out>, old_table=0x1521200254b0, table=0x15216404beb0, trx=0x152179b4ab80) at /test/10.11_dbg/storage/innobase/row/row0merge.cc:2560
      #6  row_merge_build_indexes (trx=0x152179b4ab80, old_table=0x1521200254b0, new_table=0x15212002c070, online=true, indexes=0x15212008a3c8, key_numbers=0x15212008a3d8, n_indexes=2, table=0x15216404beb0, defaults=0x0, col_map=0x15212008a500, add_autoinc=18446744073709551615, sequence=@0x152120015768: {m_max_value = 0, m_increment = 0, m_offset = 0, m_next_value = 0, m_eof = true}, skip_pk_sort=true, stage=0x152120027d80, add_v=0x0, eval_table=0x15216404beb0, allow_not_null=false, col_collate=0x0) at /test/10.11_dbg/storage/innobase/row/row0merge.cc:4794
      #7  0x000055a962b8f8ff in ha_innobase::inplace_alter_table (this=0x15212002dc80, altered_table=0x15216404beb0, ha_alter_info=0x15216404bdf0) at /usr/include/c++/9/bits/stl_tree.h:1043
      #8  0x000055a9626434cb in handler::ha_inplace_alter_table (ha_alter_info=0x15216404bdf0, altered_table=0x15216404beb0, this=<optimized out>) at /test/10.11_dbg/sql/handler.h:4589
      #9  mysql_inplace_alter_table (thd=thd@entry=0x152120000d48, table_list=0x152120013230, table=table@entry=0x15212002bbe8, altered_table=altered_table@entry=0x15216404beb0, ha_alter_info=ha_alter_info@entry=0x15216404bdf0, target_mdl_request=target_mdl_request@entry=0x15216404c690, ddl_log_state=0x15216404bd80, trigger_param=0x15216404c270, alter_ctx=0x15216404d570, partial_alter=@0x15216404bcef: false, start_alter_id=@0x15216404bcf8: 0, if_exists=false) at /test/10.11_dbg/sql/sql_table.cc:7743
      #10 0x000055a9626569bc in mysql_alter_table (thd=thd@entry=0x152120000d48, new_db=new_db@entry=0x152120005858, new_name=new_name@entry=0x152120005ca0, create_info=create_info@entry=0x15216404e390, table_list=<optimized out>, table_list@entry=0x152120013230, recreate_info=recreate_info@entry=0x15216404e280, alter_info=<optimized out>, order_num=<optimized out>, order=<optimized out>, ignore=<optimized out>, if_exists=<optimized out>) at /test/10.11_dbg/sql/sql_table.cc:10845
      #11 0x000055a9626d8d54 in Sql_cmd_alter_table::execute (this=<optimized out>, thd=0x152120000d48) at /test/10.11_dbg/sql/structs.h:569
      #12 0x000055a96257d872 in mysql_execute_command (thd=thd@entry=0x152120000d48, is_called_from_prepared_stmt=is_called_from_prepared_stmt@entry=false) at /test/10.11_dbg/sql/sql_parse.cc:6003
      #13 0x000055a962566235 in mysql_parse (thd=thd@entry=0x152120000d48, rawbuf=<optimized out>, length=<optimized out>, parser_state=parser_state@entry=0x15216404f300) at /test/10.11_dbg/sql/sql_parse.cc:8002
      #14 0x000055a96257387d in dispatch_command (command=command@entry=COM_QUERY, thd=thd@entry=0x152120000d48, packet=packet@entry=0x15212000ae19 "ALTER TABLE t ENGINE=InnoDB", packet_length=packet_length@entry=27, blocking=blocking@entry=true) at /test/10.11_dbg/sql/sql_class.h:1369
      #15 0x000055a962575cb6 in do_command (thd=0x152120000d48, blocking=blocking@entry=true) at /test/10.11_dbg/sql/sql_parse.cc:1407
      #16 0x000055a9626d1ce7 in do_handle_one_connection (connect=<optimized out>, connect@entry=0x55a9662f68e8, put_in_cache=put_in_cache@entry=true) at /test/10.11_dbg/sql/sql_connect.cc:1416
      #17 0x000055a9626d21b6 in handle_one_connection (arg=0x55a9662f68e8) at /test/10.11_dbg/sql/sql_connect.cc:1318
      #18 0x000015217bf09609 in start_thread (arg=<optimized out>) at pthread_create.c:477
      #19 0x000015217baf5133 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
      

      Bug confirmed present in:
      MariaDB:
      10.4.29 (dbg) : 0cc1694e9c7481b59d372af7f759bb0bcf552bfa
      10.5.20 (dbg) : 3261a78ea172a77fec113107ef35f218b9228b66
      10.6.13 (dbg): 18342cd5e1ba4bd8a9547844e0309f288dc939a4
      10.8.8 (dbg: dd2fe81122224c07a65e89b409dc28d70802fe99
      10.9.6 (dbg): 55e78ebf4136ed7bf78b45963f53e503201a59bb
      10.10.4 (dbg): e68f0f098665337d516033b2e2f82e7c3cc39bad
      10.11.3 (dbg): d84a2826290d9676faebba0849d1b9fb7f5efcd8
      11.0.2 (dbg): 8e55d7ea4a2f94ae3f38fdd8785778612d4b1203
      11.1.0 (dbg): 2b61ff8f2221745f0a96855a0feb0825c426f993

      Bug (or feature/syntax) confirmed not present in:
      MariaDB: 10.4.29 (opt), 10.5.20 (opt), 10.6.13 (opt), 10.8.8 (opt), 10.9.6 (opt), 10.10.4 (opt), 10.11.3 (opt), 11.0.2 (opt), 11.1.0 (opt)

      Attachments

        Issue Links

          Activity

            It would be helpful to include the source code revision of each tested version.

            It seems to me that this was fixed by MDEV-31025. I can reproduce a crash with the parent commit of the fix but not in a branch where the fix is present.

            10.4 b2bbc66a41a7b3b622fbcd477e777c45e3248886

            mysqltest: At line 7: query 'ALTER TABLE t ENGINE=InnoDB' failed: 2013: Lost connection to MySQL server during query
            

            The quarterly release merges were not pushed to the main branches until today. 10.11 d84a2826290d9676faebba0849d1b9fb7f5efcd8 did not include that fix.

            marko Marko Mäkelä added a comment - It would be helpful to include the source code revision of each tested version. It seems to me that this was fixed by MDEV-31025 . I can reproduce a crash with the parent commit of the fix but not in a branch where the fix is present. 10.4 b2bbc66a41a7b3b622fbcd477e777c45e3248886 mysqltest: At line 7: query 'ALTER TABLE t ENGINE=InnoDB' failed: 2013: Lost connection to MySQL server during query The quarterly release merges were not pushed to the main branches until today. 10.11 d84a2826290d9676faebba0849d1b9fb7f5efcd8 did not include that fix.
            ramesh Ramesh Sivaraman added a comment - - edited

            Added revision info in the description. Could not reproduce the issue on 11.0 revision : 8d26537fbf20d249d65d4daba0394a8ff71e540e

            11.0.2 8d26537fbf20d249d65d4daba0394a8ff71e540e (Debug)

            [..]
            11.0.2-dbg>ALTER TABLE t ENGINE=InnoDB;
            Query OK, 0 rows affected (0.034 sec)
            Records: 0  Duplicates: 0  Warnings: 0
             
            11.0.2-dbg>
            

            ramesh Ramesh Sivaraman added a comment - - edited Added revision info in the description. Could not reproduce the issue on 11.0 revision : 8d26537fbf20d249d65d4daba0394a8ff71e540e 11.0.2 8d26537fbf20d249d65d4daba0394a8ff71e540e (Debug) [..] 11.0.2-dbg>ALTER TABLE t ENGINE=InnoDB; Query OK, 0 rows affected (0.034 sec) Records: 0 Duplicates: 0 Warnings: 0   11.0.2-dbg>

            for rev in \
            0cc1694e9c7481b59d372af7f759bb0bcf552bfa \
            3261a78ea172a77fec113107ef35f218b9228b66 \
            18342cd5e1ba4bd8a9547844e0309f288dc939a4 \
            dd2fe81122224c07a65e89b409dc28d70802fe99 \
            55e78ebf4136ed7bf78b45963f53e503201a59bb \
            e68f0f098665337d516033b2e2f82e7c3cc39bad \
            d84a2826290d9676faebba0849d1b9fb7f5efcd8 \
            8e55d7ea4a2f94ae3f38fdd8785778612d4b1203 \
            2b61ff8f2221745f0a96855a0feb0825c426f993
            do git log --oneline "$rev"..2bfd04e3145b238df5f31143b98b1df501f43d1e|wc -l
            done
            

            This will report that each tested commit is somewhat behind the fix of MDEV-31025:

            18
            20
            89
            89
            89
            89
            89
            89
            89
            

            marko Marko Mäkelä added a comment - for rev in \ 0cc1694e9c7481b59d372af7f759bb0bcf552bfa \ 3261a78ea172a77fec113107ef35f218b9228b66 \ 18342cd5e1ba4bd8a9547844e0309f288dc939a4 \ dd2fe81122224c07a65e89b409dc28d70802fe99 \ 55e78ebf4136ed7bf78b45963f53e503201a59bb \ e68f0f098665337d516033b2e2f82e7c3cc39bad \ d84a2826290d9676faebba0849d1b9fb7f5efcd8 \ 8e55d7ea4a2f94ae3f38fdd8785778612d4b1203 \ 2b61ff8f2221745f0a96855a0feb0825c426f993 do git log --oneline "$rev" ..2bfd04e3145b238df5f31143b98b1df501f43d1e| wc -l done This will report that each tested commit is somewhat behind the fix of MDEV-31025 : 18 20 89 89 89 89 89 89 89

            Could not reproduce the issue on latest 10.x branch

            ramesh Ramesh Sivaraman added a comment - Could not reproduce the issue on latest 10.x branch

            People

              ramesh Ramesh Sivaraman
              ramesh Ramesh Sivaraman
              Votes:
              0 Vote for this issue
              Watchers:
              3 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.