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

"Wrong create options" with "big_tables" option enabled

Details

    Description

      After the fix in MDEV-24560, this bug appears:

      CREATE TABLE t(a VARCHAR(16383) CHARACTER SET UTF32, KEY k(a)) ENGINE=InnoDB;
      SET SESSION big_tables=ON;
      SELECT DISTINCT COUNT(DISTINCT a) FROM t;
      >>ERROR 1030 (HY000): Got error 140 "Wrong create options" from storage engine Aria
      

      Attachments

        Issue Links

          Activity

            The fix is ok to push (after MDEV-24560 is fixed and pushed)

            psergei Sergei Petrunia added a comment - The fix is ok to push (after MDEV-24560 is fixed and pushed)
            oleg.smirnov Oleg Smirnov added a comment -

            The fix is pushed into bb-10.9-MDEV-24560.

            oleg.smirnov Oleg Smirnov added a comment - The fix is pushed into bb-10.9- MDEV-24560 .
            oleg.smirnov Oleg Smirnov added a comment -

            Pushed to 10.2:

            commit 53b580a91c12e9272623fc45496631be65313dd8
            Author: Oleg Smirnov <olernov@gmail.com>
            Date: Thu Mar 24 14:57:23 2022 +0700

            MDEV-28077 'Wrong create options' error with 'big_tables' enabled

            The cause of the bug is overflow of uint16 KEY_PART_INFO::length and/or
            uint16 KEY_PART_INFO::store_length. The solution is to increase the size
            of those variables to the 'uint' type (which is 32-bit long)

            commit 85192553ae2c3cb5fb26ace4cd85377525ac7845
            Author: Oleg Smirnov <olernov@gmail.com>
            Date: Fri Mar 11 21:18:34 2022 +0700

            MDEV-24560 SIGSEGV in st_join_table::cleanup

            If JOIN::create_postjoin_aggr_table encounters errors during execution
            then free_tmp_table() is then called twice for JOIN_TAB::aggr.
            The solution is to initialize JOIN_TAB::aggr only on successful completion
            of JOIN::create_postjoin_aggr_table

            oleg.smirnov Oleg Smirnov added a comment - Pushed to 10.2: commit 53b580a91c12e9272623fc45496631be65313dd8 Author: Oleg Smirnov <olernov@gmail.com> Date: Thu Mar 24 14:57:23 2022 +0700 MDEV-28077 'Wrong create options' error with 'big_tables' enabled The cause of the bug is overflow of uint16 KEY_PART_INFO::length and/or uint16 KEY_PART_INFO::store_length. The solution is to increase the size of those variables to the 'uint' type (which is 32-bit long) commit 85192553ae2c3cb5fb26ace4cd85377525ac7845 Author: Oleg Smirnov <olernov@gmail.com> Date: Fri Mar 11 21:18:34 2022 +0700 MDEV-24560 SIGSEGV in st_join_table::cleanup If JOIN::create_postjoin_aggr_table encounters errors during execution then free_tmp_table() is then called twice for JOIN_TAB::aggr. The solution is to initialize JOIN_TAB::aggr only on successful completion of JOIN::create_postjoin_aggr_table

            People

              oleg.smirnov Oleg Smirnov
              oleg.smirnov Oleg Smirnov
              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.