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

LP:605798 - RQG: Table corruption after Maria engine recovery - "Wrong data in bitmap"

    Details

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

      Description

      After running a DML workload for 20 seconds, followed by a kill -9 and a (successful) recovery, CHECK TABLE EXTENDED on a Maria table reported the following error:

      'Page 2: Wrong data in bitmap. Page_type: 1 empty_space: 6321 Bitmap-bits: 3'

      The datadir will be uploaded shortly.

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            monty Michael Widenius added a comment -

            Re: RQG: Table corruption after Maria engine recovery - "Wrong data in bitmap"
            To fix this, I need the exact command to repeat this new failure so that I can repeat this.
            (I will probably need to generate a debug trace of mysqld to track this bug down)

            Note to Philip: The problem is probably a timing issue with maria_checkpoints, so if you execute checkpoints more often it may be easier to repeat this.

            Show
            monty Michael Widenius added a comment - Re: RQG: Table corruption after Maria engine recovery - "Wrong data in bitmap" To fix this, I need the exact command to repeat this new failure so that I can repeat this. (I will probably need to generate a debug trace of mysqld to track this bug down) Note to Philip: The problem is probably a timing issue with maria_checkpoints, so if you execute checkpoints more often it may be easier to repeat this.
            Hide
            philipstoev Philip Stoev added a comment -

            Re: RQG: Table corruption after Maria engine recovery - "Wrong data in bitmap"
            RQG command line that reproduced this issue with checkpoint interval = 0

            /home/buildbot/randgen/runall.pl \
            --queries=1M \
            --engine=Maria \
            -mysqld=-log-output=file \
            --reporters=ErrorLog,Backtrace,Recovery,Shutdown \
            --duration=240 \
            --threads=20 \
            --rows=10 \
            --mask-level=1 \
            -mysqld=-loose-maria-group-commit=hard \
            -mysqld=-loose-maria_group_commit_interval=10 \
            -mysqld=-maria-checkpoint-interval=0 \
            -mysqld=-maria-block-size=16K \
            --grammar=conf/engines/many_indexes.yy \
            --gendata=conf/engines/many_indexes.zz \
            --mask=53801 \
            --queries=100000000 \
            --basedir=. \
            --seed=1283009930

            Show
            philipstoev Philip Stoev added a comment - Re: RQG: Table corruption after Maria engine recovery - "Wrong data in bitmap" RQG command line that reproduced this issue with checkpoint interval = 0 /home/buildbot/randgen/runall.pl \ --queries=1M \ --engine=Maria \ - mysqld= -log-output=file \ --reporters=ErrorLog,Backtrace,Recovery,Shutdown \ --duration=240 \ --threads=20 \ --rows=10 \ --mask-level=1 \ - mysqld= -loose-maria-group-commit=hard \ - mysqld= -loose-maria_group_commit_interval=10 \ - mysqld= -maria-checkpoint-interval=0 \ - mysqld= -maria-block-size=16K \ --grammar=conf/engines/many_indexes.yy \ --gendata=conf/engines/many_indexes.zz \ --mask=53801 \ --queries=100000000 \ --basedir=. \ --seed=1283009930
            Hide
            philipstoev Philip Stoev added a comment -

            Re: RQG: Table corruption after Maria engine recovery - "Wrong data in bitmap"
            This command line reproduces the bug with certainty . It uses -mem and --mysqld=-maria-checkpoint-interval=0

            perl runall.pl -queries=1M --engine=Maria --mysqld=log-output=file --reporters=ErrorLog,Backtrace,Recovery,Shutdown --duration=240 --threads=20 --rows=10 --mask-level=1 --mysqld=loose-maria-group-commit=hard --mysqld=loose-maria_group_commit_interval=10 --mysqld=maria-checkpoint-interval=0 --mysqld=maria-block-size=16K --grammar=conf/engines/many_indexes.yy --gendata=conf/engines/many_indexes.zz --mask=53801 --queries=100000000 --seed=1283009930 --basedir=/home/philips/bzr/maria-5.1 --duration=60 --mysqld=-skip-innodb --mem

            Please use the following .ZZ file

            $tables = {
            rows => [10]
            };

            $fields = {
            types => [ 'varchar(255)', 'char(255)' , 'enum', 'set', 'longtext' ],
            indexes => [ undef, 'key' ],
            charsets => [ 'UTF8', 'UCS2' ]
            };

            $data = {
            strings => [ 'letter', 'english', undef ],
            blobs => [ 'letter', 'english' ]
            }

            Show
            philipstoev Philip Stoev added a comment - Re: RQG: Table corruption after Maria engine recovery - "Wrong data in bitmap" This command line reproduces the bug with certainty . It uses - mem and --mysqld= -maria-checkpoint-interval=0 perl runall.pl - queries=1M --engine=Maria --mysqld= log-output=file --reporters=ErrorLog,Backtrace,Recovery,Shutdown --duration=240 --threads=20 --rows=10 --mask-level=1 --mysqld= loose-maria-group-commit=hard --mysqld= loose-maria_group_commit_interval=10 --mysqld= maria-checkpoint-interval=0 --mysqld= maria-block-size=16K --grammar=conf/engines/many_indexes.yy --gendata=conf/engines/many_indexes.zz --mask=53801 --queries=100000000 --seed=1283009930 --basedir=/home/philips/bzr/maria-5.1 --duration=60 --mysqld= -skip-innodb --mem Please use the following .ZZ file $tables = { rows => [10] }; $fields = { types => [ 'varchar(255)', 'char(255)' , 'enum', 'set', 'longtext' ], indexes => [ undef, 'key' ], charsets => [ 'UTF8', 'UCS2' ] }; $data = { strings => [ 'letter', 'english', undef ], blobs => [ 'letter', 'english' ] }
            Hide
            philipstoev Philip Stoev added a comment -

            Re: RQG: Table corruption after Maria engine recovery - "Wrong data in bitmap"
            Still repeatable with

            revision-id: monty@askmonty.org-20100907165839-hbgfbzsuytbxtzn2
            date: 2010-09-07 19:58:39 +0300
            build-date: 2010-09-09 10:49:08 +0300
            revno: 2924
            branch-nick: 5.1

            RQG command line:

            1. 2010-09-09T06:21:29 # /home/buildbot/randgen/runall.pl \
            2. 2010-09-09T06:21:29 # --queries=1M \
            3. 2010-09-09T06:21:29 # --engine=Maria \
            4. 2010-09-09T06:21:29 # -mysqld=-log-output=file \
            5. 2010-09-09T06:21:29 # -mysqld=-maria_log_purge_type=at_flush \
            6. 2010-09-09T06:21:29 # --reporters=ErrorLog,Backtrace,Recovery,Shutdown \
            7. 2010-09-09T06:21:29 # --duration=120 \
            8. 2010-09-09T06:21:29 # --threads=20 \
            9. 2010-09-09T06:21:29 # --rows=10000 \
            10. 2010-09-09T06:21:29 # --mask-level=2 \
            11. 2010-09-09T06:21:29 # -mysqld=-maria-repair-threads=2 \
            12. 2010-09-09T06:21:29 # -mysqld=-loose-maria-group-commit=soft \
            13. 2010-09-09T06:21:29 # -mysqld=-loose-maria_group_commit_interval=0 \
            14. 2010-09-09T06:21:29 # -mysqld=-maria-checkpoint-interval=1 \
            15. 2010-09-09T06:21:29 # -mysqld=-maria-block-size=4K \
            16. 2010-09-09T06:21:29 # --grammar=conf/engines/engine_stress.yy \
            17. 2010-09-09T06:21:29 # --gendata=conf/engines/engine_stress.zz \
            18. 2010-09-09T06:21:29 # --mask=6680 \
            19. 2010-09-09T06:21:29 # --queries=100000000 \
            20. 2010-09-09T06:21:29 # --mask=6680 \
            21. 2010-09-09T06:21:29 # --basedir=. \
            22. 2010-09-09T06:21:29 # --seed=time \
            23. 2010-09-09T06:21:29 # --vardir=/home/buildbot/rqg-buildbot-slave/rqg-weekend/vardir-maria_recovery_weekend/current
            Show
            philipstoev Philip Stoev added a comment - Re: RQG: Table corruption after Maria engine recovery - "Wrong data in bitmap" Still repeatable with revision-id: monty@askmonty.org-20100907165839-hbgfbzsuytbxtzn2 date: 2010-09-07 19:58:39 +0300 build-date: 2010-09-09 10:49:08 +0300 revno: 2924 branch-nick: 5.1 RQG command line: 2010-09-09T06:21:29 # /home/buildbot/randgen/runall.pl \ 2010-09-09T06:21:29 # --queries=1M \ 2010-09-09T06:21:29 # --engine=Maria \ 2010-09-09T06:21:29 # - mysqld= -log-output=file \ 2010-09-09T06:21:29 # - mysqld= -maria_log_purge_type=at_flush \ 2010-09-09T06:21:29 # --reporters=ErrorLog,Backtrace,Recovery,Shutdown \ 2010-09-09T06:21:29 # --duration=120 \ 2010-09-09T06:21:29 # --threads=20 \ 2010-09-09T06:21:29 # --rows=10000 \ 2010-09-09T06:21:29 # --mask-level=2 \ 2010-09-09T06:21:29 # - mysqld= -maria-repair-threads=2 \ 2010-09-09T06:21:29 # - mysqld= -loose-maria-group-commit=soft \ 2010-09-09T06:21:29 # - mysqld= -loose-maria_group_commit_interval=0 \ 2010-09-09T06:21:29 # - mysqld= -maria-checkpoint-interval=1 \ 2010-09-09T06:21:29 # - mysqld= -maria-block-size=4K \ 2010-09-09T06:21:29 # --grammar=conf/engines/engine_stress.yy \ 2010-09-09T06:21:29 # --gendata=conf/engines/engine_stress.zz \ 2010-09-09T06:21:29 # --mask=6680 \ 2010-09-09T06:21:29 # --queries=100000000 \ 2010-09-09T06:21:29 # --mask=6680 \ 2010-09-09T06:21:29 # --basedir=. \ 2010-09-09T06:21:29 # --seed=time \ 2010-09-09T06:21:29 # --vardir=/home/buildbot/rqg-buildbot-slave/rqg-weekend/vardir-maria_recovery_weekend/current
            Hide
            ratzpo Rasmus Johansson added a comment -

            Launchpad bug id: 605798

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

              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: