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

Failed to read from the .par file upon concurrent DDL/SELECT with partition pruning

Details

    Description

      The test case is non-deterministic, run with --repeat=N. It fails for me (without rr) within a few attempts on various build types, but it can vary on different machines. The test is rr-able with --rr=-h, although it takes much longer, set repeat=N to a high value for rr.

      --source include/have_innodb.inc
      --source include/have_partition.inc
       
      --connect (con1,localhost,root,,test)
      CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=InnoDB PARTITION BY HASH (pk) PARTITIONS 4;
      CREATE TABLE t2 (pk INT PRIMARY KEY) ENGINE=InnoDB;
      SET SESSION INNODB_LOCK_WAIT_TIMEOUT= 0;
      --send
        DROP TABLE t1;
      --connection default
      DROP TABLE t2;
      --error 0,ER_NO_SUCH_TABLE
      SELECT * FROM t1 PARTITION (p3);
       
      # Cleanup
      --connection con1
      --reap
      --disconnect con1
      

      10.6 5e270ca2

      mysqltest: At line 13: query 'SELECT * FROM t1 PARTITION (p3)' failed with wrong errno ER_FAILED_READ_FROM_PAR_FILE (1696): 'Failed to read from the .par file', instead of  (0)...
      

      The failure started happening (or, if it existed before, its probability hugely increased) after this commit in 10.6.8:

      commit 8840583a92243f6ac543689148ca79c85fa0a09d
      Author: Marko Mäkelä
      Date:   Fri Mar 18 10:52:08 2022 +0200
       
          MDEV-27909 InnoDB: Failing assertion: state == TRX_STATE_NOT_STARTED ... on DDL
      

      Attachments

        Issue Links

          Activity

            elenst Elena Stepanova created issue -
            elenst Elena Stepanova made changes -
            Field Original Value New Value
            Assignee Marko Mäkelä [ marko ]
            elenst Elena Stepanova made changes -
            Summary Failed to read from the .par file upon concurrent DDL/DML Failed to read from the .par file upon concurrent DDL/SELECT
            elenst Elena Stepanova made changes -
            Summary Failed to read from the .par file upon concurrent DDL/SELECT Failed to read from the .par file upon concurrent DDL/SELECT with partition pruning
            elenst Elena Stepanova made changes -
            Description _The test case is non-deterministic, run with \-\-repeat=N. It fails for me (without {{rr}} within a few attempts on various build types, but it can vary on different machines. The test is rr-able with {{\-\-rr=-h}}, although it takes much longer, set repeat=N to a high value for {{rr}}._

            {code:sql}
            --source include/have_innodb.inc
            --source include/have_partition.inc

            --connect (con1,localhost,root,,test)
            CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=InnoDB PARTITION BY HASH (pk) PARTITIONS 4;
            CREATE TABLE t2 (pk INT PRIMARY KEY) ENGINE=InnoDB;
            SET SESSION INNODB_LOCK_WAIT_TIMEOUT= 0;
            --send
              DROP TABLE t1;
            --connection default
            DROP TABLE t2;
            --error 0,ER_NO_SUCH_TABLE
            SELECT * FROM t1 PARTITION (p3);

            # Cleanup
            --connection con1
            --reap
            --disconnect con1
            {code}

            {code:sql|title=10.6 5e270ca2}
            mysqltest: At line 13: query 'SELECT * FROM t1 PARTITION (p3)' failed with wrong errno ER_FAILED_READ_FROM_PAR_FILE (1696): 'Failed to read from the .par file', instead of (0)...
            {code}

            The failure started happening (or, if it existed before, its probability hugely increased) after this commit in 10.6.8:
            {noformat}
            commit 8840583a92243f6ac543689148ca79c85fa0a09d
            Author: Marko Mäkelä
            Date: Fri Mar 18 10:52:08 2022 +0200

                MDEV-27909 InnoDB: Failing assertion: state == TRX_STATE_NOT_STARTED ... on DDL
            {noformat}
            _The test case is non-deterministic, run with \-\-repeat=N. It fails for me (without {{rr}}) within a few attempts on various build types, but it can vary on different machines. The test is rr-able with {{\-\-rr=-h}}, although it takes much longer, set repeat=N to a high value for {{rr}}._

            {code:sql}
            --source include/have_innodb.inc
            --source include/have_partition.inc

            --connect (con1,localhost,root,,test)
            CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=InnoDB PARTITION BY HASH (pk) PARTITIONS 4;
            CREATE TABLE t2 (pk INT PRIMARY KEY) ENGINE=InnoDB;
            SET SESSION INNODB_LOCK_WAIT_TIMEOUT= 0;
            --send
              DROP TABLE t1;
            --connection default
            DROP TABLE t2;
            --error 0,ER_NO_SUCH_TABLE
            SELECT * FROM t1 PARTITION (p3);

            # Cleanup
            --connection con1
            --reap
            --disconnect con1
            {code}

            {code:sql|title=10.6 5e270ca2}
            mysqltest: At line 13: query 'SELECT * FROM t1 PARTITION (p3)' failed with wrong errno ER_FAILED_READ_FROM_PAR_FILE (1696): 'Failed to read from the .par file', instead of (0)...
            {code}

            The failure started happening (or, if it existed before, its probability hugely increased) after this commit in 10.6.8:
            {noformat}
            commit 8840583a92243f6ac543689148ca79c85fa0a09d
            Author: Marko Mäkelä
            Date: Fri Mar 18 10:52:08 2022 +0200

                MDEV-27909 InnoDB: Failing assertion: state == TRX_STATE_NOT_STARTED ... on DDL
            {noformat}
            marko Marko Mäkelä made changes -
            marko Marko Mäkelä made changes -
            Status Open [ 1 ] In Progress [ 3 ]
            marko Marko Mäkelä made changes -
            issue.field.resolutiondate 2022-09-26 12:44:01.0 2022-09-26 12:44:01.159
            marko Marko Mäkelä made changes -
            Fix Version/s 10.6.11 [ 28441 ]
            Fix Version/s 10.7.7 [ 28442 ]
            Fix Version/s 10.8.6 [ 28443 ]
            Fix Version/s 10.9.4 [ 28444 ]
            Fix Version/s 10.10.2 [ 28410 ]
            Fix Version/s 10.6 [ 24028 ]
            Fix Version/s 10.7 [ 24805 ]
            Fix Version/s 10.8 [ 26121 ]
            Fix Version/s 10.9 [ 26905 ]
            Fix Version/s 10.10 [ 27530 ]
            Resolution Fixed [ 1 ]
            Status In Progress [ 3 ] Closed [ 6 ]
            marko Marko Mäkelä made changes -
            Assignee Marko Mäkelä [ marko ] Michael Widenius [ monty ]
            Resolution Fixed [ 1 ]
            Status Closed [ 6 ] Stalled [ 10000 ]
            marko Marko Mäkelä made changes -
            marko Marko Mäkelä made changes -
            Fix Version/s 10.6 [ 24028 ]
            Fix Version/s 10.7 [ 24805 ]
            Fix Version/s 10.8 [ 26121 ]
            Fix Version/s 10.9 [ 26905 ]
            Fix Version/s 10.10 [ 27530 ]
            Fix Version/s 10.11 [ 27614 ]
            Fix Version/s 10.10.2 [ 28410 ]
            Fix Version/s 10.6.11 [ 28441 ]
            Fix Version/s 10.7.7 [ 28442 ]
            Fix Version/s 10.8.6 [ 28443 ]
            Fix Version/s 10.9.4 [ 28444 ]
            Affects Version/s 10.11 [ 27614 ]
            Priority Major [ 3 ] Critical [ 2 ]
            julien.fritsch Julien Fritsch made changes -
            Fix Version/s 10.7 [ 24805 ]
            julien.fritsch Julien Fritsch made changes -
            Fix Version/s 10.8 [ 26121 ]
            marko Marko Mäkelä made changes -
            julien.fritsch Julien Fritsch made changes -
            Fix Version/s 10.9 [ 26905 ]
            julien.fritsch Julien Fritsch made changes -
            Fix Version/s 10.10 [ 27530 ]
            marko Marko Mäkelä made changes -
            marko Marko Mäkelä made changes -
            marko Marko Mäkelä made changes -

            People

              monty Michael Widenius
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.