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

LP:619731 - Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap"

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:

      Description

      The following RQG command line:

      perl runall.pl \
      --queries=1M \
      --engine=Maria \
      -mysqld=-log-output=file \
      --reporters=ErrorLog,Backtrace,Recovery,Shutdown \
      --duration=120 \
      --threads=20 \
      --rows=1000 \
      --mask-level=1 \
      -mysqld=-maria-repair-threads=2 \
      -mysqld=-loose-maria-group-commit=hard \
      -mysqld=-loose-maria_group_commit_interval=1 \
      -mysqld=-maria-checkpoint-interval=1 \
      -mysqld=-maria-block-size=4K \
      --grammar=conf/engines/many_indexes.yy \
      --gendata=conf/engines/many_indexes.zz \
      --mask=18168 \
      --queries=100000000 \
      --basedir=/home/philips/bzr/maria-5.1/

      reported the following corruption on CHECK TABLE EXTENDED

      'Page 1: Row: 1 has an extent with wrong information in bitmap: Page 192 Page_type: 2 Bitmap: 0'

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            philipstoev Philip Stoev added a comment -

            Re: Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap"
            RQG command line:

            /home/buildbot/randgen/runall.pl \
            --queries=1M \
            --engine=Maria \
            -mysqld=-default-storage-engine=Maria \
            -mysqld=-safe-mode \
            -mysqld=-sync-sys=0 \
            -mysqld=-log-output=file \
            -mysqld=-maria_log_purge_type=at_flush \
            --reporters=ErrorLog,Backtrace,Recovery,Shutdown \
            --duration=30 \
            --threads=1 \
            --rows=1000 \
            --mask-level=1 \
            -mysqld=-maria-repair-threads=2 \
            -mysqld=-loose-maria-group-commit=soft \
            -mysqld=-loose-maria_group_commit_interval=100 \
            -mysqld=-maria-checkpoint-interval=1 \
            -mysqld=-maria-block-size=4K \
            --mask=41440 \
            --queries=100000000 \
            --mask=41440 \
            --seed=time \
            --basedir=. \
            -mysqld=-init-file=/home/buildbot/randgen/conf/smf/smf2.sql \
            --grammar=conf/smf/smf2.yy

            Show
            philipstoev Philip Stoev added a comment - Re: Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap" RQG command line: /home/buildbot/randgen/runall.pl \ --queries=1M \ --engine=Maria \ - mysqld= -default-storage-engine=Maria \ - mysqld= -safe-mode \ - mysqld= -sync-sys=0 \ - mysqld= -log-output=file \ - mysqld= -maria_log_purge_type=at_flush \ --reporters=ErrorLog,Backtrace,Recovery,Shutdown \ --duration=30 \ --threads=1 \ --rows=1000 \ --mask-level=1 \ - mysqld= -maria-repair-threads=2 \ - mysqld= -loose-maria-group-commit=soft \ - mysqld= -loose-maria_group_commit_interval=100 \ - mysqld= -maria-checkpoint-interval=1 \ - mysqld= -maria-block-size=4K \ --mask=41440 \ --queries=100000000 \ --mask=41440 \ --seed=time \ --basedir=. \ - mysqld= -init-file=/home/buildbot/randgen/conf/smf/smf2.sql \ --grammar=conf/smf/smf2.yy
            Hide
            philipstoev Philip Stoev added a comment -

            Re: Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap"
            Still present with the following revision:

            revno: 2951
            committer: Michael Widenius <monty@askmonty.org>
            branch nick: maria-5.1
            timestamp: Wed 2010-10-13 18:15:43 +0300
            message:
            Fixes for bugs found by running test case for LP#608369 "Page: 1 Found wrong page type 0' on CHECK TABLE EXTENDED"
            Fixed overflow when using long --debug=xxxxxx line.
            Fixed that "mysqld --disable-debug --debug" works.
            Ensure that MariaDB doesn't start if the Aria engine didn't start and we are using Aria for temporary tables.
            More DBUG_ASSERT() and more info in debug log.

            Show
            philipstoev Philip Stoev added a comment - Re: Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap" Still present with the following revision: revno: 2951 committer: Michael Widenius <monty@askmonty.org> branch nick: maria-5.1 timestamp: Wed 2010-10-13 18:15:43 +0300 message: Fixes for bugs found by running test case for LP#608369 "Page: 1 Found wrong page type 0' on CHECK TABLE EXTENDED" Fixed overflow when using long --debug=xxxxxx line. Fixed that "mysqld --disable-debug --debug" works. Ensure that MariaDB doesn't start if the Aria engine didn't start and we are using Aria for temporary tables. More DBUG_ASSERT() and more info in debug log.
            Hide
            monty Michael Widenius added a comment -

            Re: Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap"
            After a LOT of work and thinking, I finally nailed down a corruption in the bitmaps.
            The bug happens when deleting a row spanning many pages and there is new data inserted on the same page during one checkpoint and the new data pages are flushed out.
            I will push a fix for this in 5.1 tomorrow morning (after I have run testing on the patch the whole night).

            Show
            monty Michael Widenius added a comment - Re: Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap" After a LOT of work and thinking, I finally nailed down a corruption in the bitmaps. The bug happens when deleting a row spanning many pages and there is new data inserted on the same page during one checkpoint and the new data pages are flushed out. I will push a fix for this in 5.1 tomorrow morning (after I have run testing on the patch the whole night).
            Hide
            monty Michael Widenius added a comment -

            Re: Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap"
            Fixed and committed yesterday a related bug. Now I can't repeat any problems anymore with the given test cases.
            Fix is also pushed to 5.2 tree.

            Show
            monty Michael Widenius added a comment - Re: Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap" Fixed and committed yesterday a related bug. Now I can't repeat any problems anymore with the given test cases. Fix is also pushed to 5.2 tree.
            Hide
            ratzpo Rasmus Johansson added a comment -

            Launchpad bug id: 619731

            Show
            ratzpo Rasmus Johansson added a comment - Launchpad bug id: 619731

              People

              • Assignee:
                monty Michael Widenius
                Reporter:
                philipstoev Philip Stoev
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: