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

Failing assertion for name length on RENAME TABLE

    XMLWordPrintable

Details

    Description

      Reproduce

      --source include/have_innodb.inc
      --source include/not_windows.inc
      --source include/not_embedded.inc
       
      let $d255=###################################################;
      let $d250=##################################################;
      let $d245=#################################################;
      --replace_result $d255 d255
      eval create database `$d255`;
      eval create table `$d255`.`$d245` (x int) engine innodb;
       
      # CREATE TABLE works
      eval create table `$d255`.`$d250` (x int) engine innodb;
      eval drop table `$d255`.`$d250`;
       
      # RENAME TABLE doesn't work
      --error ER_IDENT_CAUSES_TOO_LONG_PATH
      eval rename table `$d255`.`$d245` to `$d255`.`$d250`;
       
      # and even assertion-fails!
      eval rename table `$d255`.`$d245` to a;
       
      eval drop database `$d255`;
      drop table t;
      

      Result

      RENAME TABLE fails to rename to `$d255`.`$d250` while CREATE TABLE succeeds. RENAME TABLE from `$d255`.`$d245` fails with assertion.

      #12 0x00007f77f8622e96 in __GI___assert_fail (assertion=0x55cdf1186df3 "len <= (64*3) * 2 + 1", file=0x55cdf11860d0 "../src/storage/innobase/trx/trx0rec.cc", line=1862, function=0x55cdf1186d77 "uint16_t trx_undo_page_report_rename(trx_t *, const dict_table_t *, buf_block_t *, mtr_t *)") at ./assert/assert.c:101
      #13 0x000055cdf0a42d21 in trx_undo_page_report_rename (trx=0x7f77eec61680, table=0x7f77b8216ce8, block=0x7f77eeb616c0, mtr=0x7f77ec3b6100) at ../src/storage/innobase/trx/trx0rec.cc:1862
      #14 0x000055cdf0a42920 in trx_undo_report_rename (trx=0x7f77eec61680, table=0x7f77b8216ce8) at ../src/storage/innobase/trx/trx0rec.cc:1909
      #15 0x000055cdf09aec34 in row_rename_table_for_mysql (old_name=0x7f77ec3b7720 "@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023/@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023@0023", new_name=0x7f77ec3b7920 "test/a", trx=0x7f77eec61680, use_fk=true) at ../src/storage/innobase/row/row0mysql.cc:2655
      

      Attachments

        Issue Links

          Activity

            People

              marko Marko Mäkelä
              midenok Aleksey Midenkov
              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.