[MDEV-3749] LP:619731 - Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap" Created: 2010-08-18  Updated: 2015-02-02  Resolved: 2012-10-04

Status: Closed
Project: MariaDB Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Philip Stoev (Inactive) Assignee: Michael Widenius
Resolution: Fixed Votes: 0
Labels: Launchpad

Attachments: XML File LPexportBug619731.xml     Zip Archive LPexportBug619731_var-bug619731-2.zip     Zip Archive LPexportBug619731_var-bug619731.zip    

 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'



 Comments   
Comment by Philip Stoev (Inactive) [ 2010-08-18 ]

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

Comment by Philip Stoev (Inactive) [ 2010-08-18 ]

core binary datadir
LPexportBug619731_var-bug619731.zip

Comment by Michael Widenius [ 2010-09-09 ]

Re: Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap"
This is probably fixed by my last pushed fix for bitmap pages. I will run the test case 5 times to try to ensure this case is also fixed.

Comment by Philip Stoev (Inactive) [ 2010-09-21 ]

Re: Aria recovery corruption "Page 1: Row: 1 has an extent with wrong information in bitmap"
I am afraid this corruption still happened with the following revision:

revision-id: monty@askmonty.org-20100915130103-x6i3x2mjc5gxsu77
date: 2010-09-15 16:01:03 +0300
build-date: 2010-09-20 12:05:51 +0300
revno: 2938
branch-nick: 5.1

I will upload the datadir shortly.

Comment by Philip Stoev (Inactive) [ 2010-09-21 ]

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

Comment by Philip Stoev (Inactive) [ 2010-09-21 ]

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

datadir, logs, etc.
LPexportBug619731_var-bug619731-2.zip

Comment by Philip Stoev (Inactive) [ 2010-10-14 ]

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.

Comment by Michael Widenius [ 2011-01-04 ]

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).

Comment by Michael Widenius [ 2011-01-07 ]

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.

Comment by Rasmus Johansson (Inactive) [ 2011-03-01 ]

Launchpad bug id: 619731

Generated at Thu Feb 08 06:50:55 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.