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

Invalid CREATE INDEX fails to report error correctly

    XMLWordPrintable

Details

    Description

      The following test is crashing the MariaDB Server 10.2 debug build in the CREATE INDEX:

      --source include/have_innodb.inc
      SET GLOBAL innodb_file_format=Barracuda;
      SET GLOBAL innodb_large_prefix=0;
      CREATE TABLE t (a VARCHAR(4000)) ROW_FORMAT=DYNAMIC ENGINE=InnoDB;
      --error ER_TOO_LONG_KEY
      CREATE INDEX prefix_idx ON t(a(1000));
      DROP TABLE t;
      

      The innodb_file_format and ROW_FORMAT=DYNAMIC are defaults. I added them only to test this in 10.0 and 10.1, which rightfully reported the following:

      mysqltest: At line 7: query 'CREATE INDEX prefix_idx ON t(a(1000))' succeeded - should have failed with errno 1071...

      In 10.2 we instead get the famous debug assertion failure:

      mysqld: /mariadb/10.2/sql/sql_error.cc:380: void Diagnostics_area::set_ok_status(ulonglong, ulonglong, const char *): Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failed.

      Attachments

        Activity

          People

            sanja Oleksandr Byelkin
            marko Marko Mäkelä
            Votes:
            1 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.