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

Bug #619731 reported by Philip Stoev on 2010-08-18
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MariaDB
Fix Released
High
Michael Widenius

Bug 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'

Philip Stoev (pstoev-askmonty) wrote :
Changed in maria:
assignee: nobody → Michael Widenius (monty)
milestone: none → 5.1
importance: Undecided → High
Michael Widenius (monty) wrote :

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.

Changed in maria:
status: New → In Progress
Michael Widenius (monty) on 2010-09-10
Changed in maria:
status: In Progress → Fix Released
Philip Stoev (pstoev-askmonty) wrote :

I am afraid this corruption still happened with the following revision:

revision-id: <email address hidden>
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.

Philip Stoev (pstoev-askmonty) wrote :

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

Changed in maria:
status: Fix Released → Confirmed
Philip Stoev (pstoev-askmonty) wrote :

Still present with the following revision:

revno: 2951
committer: Michael Widenius <email address hidden>
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.

Michael Widenius (monty) on 2010-12-18
Changed in maria:
status: Confirmed → In Progress
Michael Widenius (monty) wrote :

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

Michael Widenius (monty) on 2011-01-05
Changed in maria:
status: In Progress → Fix Committed
Michael Widenius (monty) wrote :

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.

Michael Widenius (monty) on 2011-03-01
Changed in maria:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers