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

LP:670812 - ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed with Aria

    Details

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

      Description

      When executing the varchar RQG scenario, Aria asserted as follows:

      mysqld: ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed.

      backtrace

      #6 0x000000307b62b945 in __assert_fail (assertion=0xd63cb0 "bitmap->flush_all_requested == 1", file=<value optimized out>, line=367,
      function=<value optimized out>) at assert.c:81
      #7 0x0000000000997dd2 in _ma_bitmap_flush_all (share=0x7f723800eb48) at ma_bitmap.c:367
      #8 0x00000000009dd371 in collect_tables (str=0x7f72afbfbd40, checkpoint_start_log_horizon=4448453868) at ma_checkpoint.c:1081
      #9 0x00000000009db854 in really_execute_checkpoint () at ma_checkpoint.c:195
      #10 0x00000000009db656 in ma_checkpoint_execute (level=CHECKPOINT_MEDIUM, no_wait=1 '\001') at ma_checkpoint.c:132
      #11 0x00000000009dc38a in ma_checkpoint_background (arg=0x1) at ma_checkpoint.c:620
      #12 0x000000307ba07761 in start_thread (arg=0x7f72afbfc710) at pthread_create.c:301
      #13 0x000000307b6e150d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

      bzr version-info:

      revision-id: <email address hidden>
      date: 2010-11-03 14:18:18 +0200
      build-date: 2010-11-03 15:00:40 +0200
      revno: 2966
      branch-nick: 5.1
      ------------------------------------------------------------
      revno: 2966 [merge]
      committer: Michael Widenius <email address hidden>
      branch nick: maria-5.1
      timestamp: Wed 2010-11-03 14:18:18 +0200
      message:
      Automatic merge

      RQG command line:

      /home/buildbot/randgen/runall.pl \
      --queries=1M \
      --engine=Maria \
      -mysqld=-default-storage-engine=Maria \
      -mysqld=-safe-mode \
      -mysqld=-loose-debug-assert-if-crashed-table \
      -mysqld=-sync-sys=0 \
      -mysqld=-log-output=file \
      -mysqld=-maria_log_purge_type=at_flush \
      --reporters=ErrorLog,Backtrace,Recovery,Shutdown \
      --duration=240 \
      --threads=5 \
      --rows=10 \
      --mask-level=2 \
      -mysqld=-loose-maria-group-commit=hard \
      -mysqld=-loose-maria_group_commit_interval=0 \
      -mysqld=-maria-checkpoint-interval=1 \
      -mysqld=-maria-block-size=16K \
      --grammar=conf/engines/varchar.yy \
      --gendata=conf/engines/varchar.zz \
      --mask=44301 \
      --queries=100000000 \
      --seed=1288845567 \
      --basedir=.

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            philipstoev Philip Stoev added a comment -

            core binary datadir log
            LPexportBug670812_var-bug670812.zip

            Show
            philipstoev Philip Stoev added a comment - core binary datadir log LPexportBug670812_var-bug670812.zip
            Hide
            philipstoev Philip Stoev added a comment -

            Re: ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed with Aria

            Show
            philipstoev Philip Stoev added a comment - Re: ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed with Aria
            Hide
            philipstoev Philip Stoev added a comment -

            Re: ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed with Aria
            Happened again with

            perl runall.pl \
            --queries=1M \
            --engine=Maria \
            -mysqld=-default-storage-engine=Maria \
            -mysqld=-safe-mode \
            -mysqld=-loose-debug-assert-if-crashed-table \
            -mysqld=-sync-sys=0 \
            -mysqld=-log-output=file \
            -mysqld=-maria_log_purge_type=at_flush \
            --reporters=ErrorLog,Backtrace,Recovery,Shutdown \
            --duration=120 \
            --threads=5 \
            --rows=10000 \
            --mask-level=2 \
            -mysqld=-loose-maria-group-commit=soft \
            -mysqld=-loose-maria_group_commit_interval=100 \
            -mysqld=-maria-checkpoint-interval=1 \
            -mysqld=-maria-block-size=16K \
            --grammar=conf/engines/varchar.yy \
            --gendata=conf/engines/varchar.zz \
            --mask=60151 \
            --queries=100000000 \
            --mask=60151 \
            --seed=1288928729 \
            --basedir=. \

            The two RQG command lines have --maria-block-size=16K in common.

            Show
            philipstoev Philip Stoev added a comment - Re: ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed with Aria Happened again with perl runall.pl \ --queries=1M \ --engine=Maria \ - mysqld= -default-storage-engine=Maria \ - mysqld= -safe-mode \ - mysqld= -loose-debug-assert-if-crashed-table \ - mysqld= -sync-sys=0 \ - mysqld= -log-output=file \ - mysqld= -maria_log_purge_type=at_flush \ --reporters=ErrorLog,Backtrace,Recovery,Shutdown \ --duration=120 \ --threads=5 \ --rows=10000 \ --mask-level=2 \ - mysqld= -loose-maria-group-commit=soft \ - mysqld= -loose-maria_group_commit_interval=100 \ - mysqld= -maria-checkpoint-interval=1 \ - mysqld= -maria-block-size=16K \ --grammar=conf/engines/varchar.yy \ --gendata=conf/engines/varchar.zz \ --mask=60151 \ --queries=100000000 \ --mask=60151 \ --seed=1288928729 \ --basedir=. \ The two RQG command lines have --maria-block-size=16K in common.
            Hide
            philipstoev Philip Stoev added a comment -

            Re: ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed with Aria
            Again repeatable with -mysqld=-maria-block-size=16K with the following version:
            revision-id: monty@askmonty.org-20110107155812-hqg2lq79ay4gskfb
            date: 2011-01-07 17:58:12 +0200
            build-date: 2011-01-09 17:42:38 +0200
            revno: 3006
            branch-nick: 5.1
            ------------------------------------------------------------
            revno: 3006
            committer: Michael Widenius <monty@askmonty.org>
            branch nick: maria-5.1
            timestamp: Fri 2011-01-07 17:58:12 +0200
            message:
            Don't do DBUG_ASSERT for checksum errors when using REPAIR
            mysql_convert_table_format ignored --engine option.
            Fix that zerofill() doesn't write out wrong data to client if run with auto repair.
            Ensure that pagecache is properly flushed, even in case of errors.
            Handle checksum errors in BLOCK_RECORD format.

            Show
            philipstoev Philip Stoev added a comment - Re: ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed with Aria Again repeatable with - mysqld= -maria-block-size=16K with the following version: revision-id: monty@askmonty.org-20110107155812-hqg2lq79ay4gskfb date: 2011-01-07 17:58:12 +0200 build-date: 2011-01-09 17:42:38 +0200 revno: 3006 branch-nick: 5.1 ------------------------------------------------------------ revno: 3006 committer: Michael Widenius <monty@askmonty.org> branch nick: maria-5.1 timestamp: Fri 2011-01-07 17:58:12 +0200 message: Don't do DBUG_ASSERT for checksum errors when using REPAIR mysql_convert_table_format ignored --engine option. Fix that zerofill() doesn't write out wrong data to client if run with auto repair. Ensure that pagecache is properly flushed, even in case of errors. Handle checksum errors in BLOCK_RECORD format.
            Hide
            philipstoev Philip Stoev added a comment -

            Re: ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed with Aria
            Still repeatable with

            revision-id: monty@askmonty.org-20110124131940-6xh22if0cehedvbf
            date: 2011-01-24 15:19:40 +0200
            build-date: 2011-01-26 11:39:44 +0200
            revno: 3020
            branch-nick: 5.1
            ------------------------------------------------------------
            revno: 3020
            committer: Michael Widenius <monty@askmonty.org>
            branch nick: maria-5.1
            timestamp: Mon 2011-01-24 15:19:40 +0200
            message:
            Aria issues:

            • Fix for LP#700623 "Aria recovery: ma_blockrec.c:3930: _ma_update_at_original_place: Assertion `block->org_bitmap_value == _ma_bitmap_get_page_bits(info, &info->s->bitmap, page)' failed"
            • Issue was that when deleting a tail page where all index entries where full, the page was marked wrongly in the bitmap.
            • If debug_assert_if_crashed_table is set, we now crash when we find Aria corrupted.
            • Write more information if we find something wrong with the bitmap.
            • Fixed that REPAIR also can fix wrong create_rename_lsn issues (a very unlikely event)
            • Define STATE_CRASHED_FLAGS as set of all CRASHED flags (to simplify code)

            RQG command line:

            1. 2011-01-26T14:14:26 # /home/buildbot/randgen/runall.pl \
            2. 2011-01-26T14:14:26 # --queries=1M \
            3. 2011-01-26T14:14:26 # --engine=Maria \
            4. 2011-01-26T14:14:26 # -mysqld=-default-storage-engine=Maria \
            5. 2011-01-26T14:14:26 # -mysqld=-safe-mode \
            6. 2011-01-26T14:14:26 # -mysqld=-loose-debug-assert-if-crashed-table \
            7. 2011-01-26T14:14:26 # -mysqld=-sync-sys=0 \
            8. 2011-01-26T14:14:26 # -mysqld=-log-output=file \
            9. 2011-01-26T14:14:26 # -mysqld=-maria_log_purge_type=at_flush \
            10. 2011-01-26T14:14:26 # --reporters=ErrorLog,Backtrace,Recovery,Shutdown \
            11. 2011-01-26T14:14:26 # --duration=240 \
            12. 2011-01-26T14:14:26 # --threads=20 \
            13. 2011-01-26T14:14:26 # --rows=10000 \
            14. 2011-01-26T14:14:26 # --mask-level=0 \
            15. 2011-01-26T14:14:26 # -mysqld=-maria-repair-threads=2 \
            16. 2011-01-26T14:14:26 # -mysqld=-loose-maria-group-commit=hard \
            17. 2011-01-26T14:14:26 # -mysqld=-loose-maria_group_commit_interval=100 \
            18. 2011-01-26T14:14:26 # -mysqld=-maria-checkpoint-interval=1 \
            19. 2011-01-26T14:14:26 # -mysqld=-maria-block-size=16K \
            20. 2011-01-26T14:14:26 # -mysqld=-init-file=/home/buildbot/randgen/conf/smf/smf2.sql \
            21. 2011-01-26T14:14:26 # --grammar=conf/smf/smf2.yy \
            22. 2011-01-26T14:14:26 # --queries=100000000 \
            23. 2011-01-26T14:14:26 # --mask=54952 \
            24. 2011-01-26T14:14:26 # --basedir=. \
            25. 2011-01-26T14:14:26 # --seed=time \
            Show
            philipstoev Philip Stoev added a comment - Re: ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed with Aria Still repeatable with revision-id: monty@askmonty.org-20110124131940-6xh22if0cehedvbf date: 2011-01-24 15:19:40 +0200 build-date: 2011-01-26 11:39:44 +0200 revno: 3020 branch-nick: 5.1 ------------------------------------------------------------ revno: 3020 committer: Michael Widenius <monty@askmonty.org> branch nick: maria-5.1 timestamp: Mon 2011-01-24 15:19:40 +0200 message: Aria issues: Fix for LP#700623 "Aria recovery: ma_blockrec.c:3930: _ma_update_at_original_place: Assertion `block->org_bitmap_value == _ma_bitmap_get_page_bits(info, &info->s->bitmap, page)' failed" Issue was that when deleting a tail page where all index entries where full, the page was marked wrongly in the bitmap. If debug_assert_if_crashed_table is set, we now crash when we find Aria corrupted. Write more information if we find something wrong with the bitmap. Fixed that REPAIR also can fix wrong create_rename_lsn issues (a very unlikely event) Define STATE_CRASHED_FLAGS as set of all CRASHED flags (to simplify code) RQG command line: 2011-01-26T14:14:26 # /home/buildbot/randgen/runall.pl \ 2011-01-26T14:14:26 # --queries=1M \ 2011-01-26T14:14:26 # --engine=Maria \ 2011-01-26T14:14:26 # - mysqld= -default-storage-engine=Maria \ 2011-01-26T14:14:26 # - mysqld= -safe-mode \ 2011-01-26T14:14:26 # - mysqld= -loose-debug-assert-if-crashed-table \ 2011-01-26T14:14:26 # - mysqld= -sync-sys=0 \ 2011-01-26T14:14:26 # - mysqld= -log-output=file \ 2011-01-26T14:14:26 # - mysqld= -maria_log_purge_type=at_flush \ 2011-01-26T14:14:26 # --reporters=ErrorLog,Backtrace,Recovery,Shutdown \ 2011-01-26T14:14:26 # --duration=240 \ 2011-01-26T14:14:26 # --threads=20 \ 2011-01-26T14:14:26 # --rows=10000 \ 2011-01-26T14:14:26 # --mask-level=0 \ 2011-01-26T14:14:26 # - mysqld= -maria-repair-threads=2 \ 2011-01-26T14:14:26 # - mysqld= -loose-maria-group-commit=hard \ 2011-01-26T14:14:26 # - mysqld= -loose-maria_group_commit_interval=100 \ 2011-01-26T14:14:26 # - mysqld= -maria-checkpoint-interval=1 \ 2011-01-26T14:14:26 # - mysqld= -maria-block-size=16K \ 2011-01-26T14:14:26 # - mysqld= -init-file=/home/buildbot/randgen/conf/smf/smf2.sql \ 2011-01-26T14:14:26 # --grammar=conf/smf/smf2.yy \ 2011-01-26T14:14:26 # --queries=100000000 \ 2011-01-26T14:14:26 # --mask=54952 \ 2011-01-26T14:14:26 # --basedir=. \ 2011-01-26T14:14:26 # --seed=time \
            Hide
            philipstoev Philip Stoev added a comment -

            Re: ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed with Aria
            Still repeatable with

            revision-id: monty@askmonty.org-20110130144457-v4an23g54l71zglq
            date: 2011-01-30 16:44:57 +0200
            build-date: 2011-02-01 22:49:52 +0200
            revno: 3027
            branch-nick: 5.1
            ------------------------------------------------------------
            revno: 3027
            committer: Michael Widenius <monty@askmonty.org>
            branch nick: maria-5.1
            timestamp: Sun 2011-01-30 16:44:57 +0200
            message:
            Ignore some linked files

            most definitely it is a maria-block-size=16K issue.

            Show
            philipstoev Philip Stoev added a comment - Re: ma_bitmap.c:367: _ma_bitmap_flush_all: Assertion `bitmap->flush_all_requested == 1' failed with Aria Still repeatable with revision-id: monty@askmonty.org-20110130144457-v4an23g54l71zglq date: 2011-01-30 16:44:57 +0200 build-date: 2011-02-01 22:49:52 +0200 revno: 3027 branch-nick: 5.1 ------------------------------------------------------------ revno: 3027 committer: Michael Widenius <monty@askmonty.org> branch nick: maria-5.1 timestamp: Sun 2011-01-30 16:44:57 +0200 message: Ignore some linked files most definitely it is a maria-block-size=16K issue.
            Hide
            ratzpo Rasmus Johansson added a comment -

            Launchpad bug id: 670812

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

              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: