[Warning] InnoDB: changed page bitmap file './ib_modified_log_11_951286349.xdb' does not contain a complete run at the end.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| Percona Server moved to https://jira.percona.com/projects/PS |
Fix Released
|
Medium
|
Laurynas Biveinis | |
| 5.1 |
Won't Fix
|
Medium
|
Laurynas Biveinis | |
| 5.5 |
Fix Released
|
Medium
|
Laurynas Biveinis | |
| 5.6 |
Fix Released
|
Medium
|
Laurynas Biveinis |
Bug Description
Seen like this:
2013-06-20 13:55:59 12023 [Note] /ssd2/Percona-
Version: '5.6.11-
2013-06-20 13:57:47 12023 [Warning] InnoDB: changed page bitmap file './ib_modified_
2013-06-20 13:58:54 12023 [ERROR] /ssd2/Percona-
2013-06-20 13:59:11 7f63800b3700 InnoDB: Assertion failure in thread 140065326708480 in file btr0btr.ic line 169
InnoDB: Failing assertion: mtr_memo_
Though the assertion bug is already logged in Bug 1192898, attaching the full details here again in case it shows anything about the error.
Related branches
- Sergei Glushchenko (community): Approve (g2) on 2014-07-14
-
Diff: 221 lines (+120/-19)7 files modifiedmysql-test/suite/innodb/r/percona_changed_page_bmp_debug.result (+16/-0)
mysql-test/suite/innodb/t/percona_changed_page_bmp_debug.test (+56/-0)
storage/innobase/handler/i_s.cc (+12/-0)
storage/innobase/include/log0log.h (+12/-0)
storage/innobase/include/log0log.ic (+21/-0)
storage/innobase/log/log0log.c (+0/-19)
storage/innobase/log/log0online.c (+3/-0)
- Sergei Glushchenko (community): Approve (g2) on 2014-07-14
-
Diff: 221 lines (+120/-19)7 files modifiedmysql-test/suite/innodb/r/percona_changed_page_bmp_debug.result (+16/-0)
mysql-test/suite/innodb/t/percona_changed_page_bmp_debug.test (+56/-0)
storage/innobase/handler/i_s.cc (+12/-0)
storage/innobase/include/log0log.h (+12/-0)
storage/innobase/include/log0log.ic (+21/-0)
storage/innobase/log/log0log.cc (+0/-19)
storage/innobase/log/log0online.cc (+3/-0)
Roel Van de Paar (roel11) wrote : | #1 |
Roel Van de Paar (roel11) wrote : | #2 |
Roel Van de Paar (roel11) wrote : | #3 |
Roel Van de Paar (roel11) wrote : | #5 |
That could have been the case.
Another similar situation:
2013-06-20 14:45:00 20219 [Note] /ssd2/Percona-
Version: '5.6.11-
InnoDB: Error: the age of the oldest untracked record exceeds the log group capacity!
InnoDB: Error: stopping the log tracking thread at LSN 105616999
2013-06-20 14:47:59 20219 [ERROR] InnoDB: log tracking bitmap write failed, stopping log tracking thread!
2013-06-20 14:53:38 7fe460152700 InnoDB: Assertion failure in thread 140618841270016 in file btr0btr.ic line 169
InnoDB: Failing assertion: mtr_memo_
Adding logs. Please review these as well.
If similar is expected, please close issue, it's then quite sure disk space.
Roel Van de Paar (roel11) wrote : | #6 |
Roel Van de Paar (roel11) wrote : | #7 |
Roel Van de Paar (roel11) wrote : | #8 |
Is it possible to confirm whether that was really the case?
The "InnoDB: Error: the age of the oldest untracked record exceeds the log group capacity!" is an orthogonal issue.
Roel Van de Paar (roel11) wrote : | #10 |
There is also this one:
2013-06-20 12:50:32 3921 [Note] /ssd2/Percona-
Version: '5.6.11-
2013-06-20 13:20:53 3921 [Warning] InnoDB: changed page bitmap file './ib_modified_
2013-06-20 13:20:53 3921 [Warning] InnoDB: changed page bitmap file './ib_modified_
2013-06-20 13:21:04 3921 [Warning] Invalid (old?) table or database name '#sqlf51_1a_0'
2013-06-20 13:21:04 3921 [Warning] Invalid (old?) table or database name '#sqlf51_1a_0'
2013-06-20 13:21:24 3921 [Warning] Invalid (old?) table or database name '#sqlf51_1a_0'
2013-06-20 13:21:24 3921 [Warning] Invalid (old?) table or database name '#sqlf51_1a_0'
2013-06-20 13:21:44 3921 [Warning] Invalid (old?) table or database name '#sqlf51_1a_0'
2013-06-20 13:21:55 7f13a5ac0700 InnoDB: Assertion failure in thread 139722360620800 in file log0log.cc line 308
InnoDB: Failing assertion: ++count < 50
Note the same error, but this time with ib_modified_
It seems somewhat unlikely that the server ran out of disk space, there are 0 relevant warnings/errors in all trials for this run, and this last error is from trial 3, while there are many. In other words, the 3 occurrences above all seem valid ftm.
Roel Van de Paar (roel11) wrote : | #11 |
For the failing assertion ++count < 50, see bug 1193319
Roel -
Can you attach ls -lR output of the datadir of this run?
tags: | added: 56qual |
tags: | removed: 56qual |
Roel Van de Paar (roel11) wrote : | #13 |
Ok, so this issue is seen still regularly, even in recent QA-5.6 tree revisions. Requesting re-triage to high based on that, maybe even critical is warranted, all depends on severity of message itself. I assume original 'medium' was set based on disk space being full or not, but this issue now confirmed reproduces without disk full. Attempting to get good testcase (if needed).
Roel Van de Paar (roel11) wrote : | #14 |
2013-09-24 18:05:45 [] [Stage V] [MULTI] All subreducer threads have finished/terminated
2013-09-24 18:05:45 [*] [Stage V] [MULTI] Threads which reproduced the issue: #1 #3 #4 #6 #9 #10
2013-09-24 18:05:45 [*] [Stage V] [MULTI] Only 6 out of 10 threads reproduced the issue: this issue is sporadic
Issue is definitely sporadic
Roel Van de Paar (roel11) wrote : | #15 |
Sporadic testcase reduced to:
DROP DATABASE test;CREATE DATABASE test;USE test;
CREATE TABLE t2 (c1 BLOB, c4 VARBINARY ( 32 ) , KEY (c1(1))) ENGINE = InnoDB ROW_FORMAT = FIXED KEY_BLOCK_SIZE = 4;
SET @@global.
SELECT COUNT(*) FROM INFORMATION_
With these mysqld options:
MYEXTRA=
MYBASE=
Note that any clause, and any mysqld option may be "too much", but it would take more time to debug. Hope this is enough to go on. Note that even the full testcase may be "too much" - i.e. some race always present caused by server options, sql independent, for example
The problem is bitmap writer thread working in parallel with bitmap reader, causing the latter to see partial data in the middle of the write. The workaround is to specify the desired END_LSN in the I_S query. The fix would be -
1) if the bitmap tracking is off, then these diagnostics always apply;
2) if the bitmap tracking is on, check the max current tracked LSN, limit END_LSN by it, do not attempt to read further.
tags: | added: bitmap |
Roel Van de Paar (roel11) wrote : | #17 |
Understood. That indeed confirms low prio given data is not corrupted, it's just a wrong offset on reading I_S query.
Roel Van de Paar (roel11) wrote : | #19 |
Bug needs a combination of some not-very-often-used factors to occur. So we have agreed to fix this as prio post-GA.
tags: | added: postga |
tags: | removed: postga |
Roel Van de Paar (roel11) wrote : | #20 |
The only challenge here is that this is seen heaps in RQG runs, and, it means that the runs end in STATUS_ALARM failure (due to the issue being visible in the error log). Not enough for qablock, as in principle it could be worked around in RQG, but as such it would be great if this was definitely fixed for next point release.
Percona now uses JIRA for bug reports so this bug report is migrated to: https:/
This error is expected if the server was started on a crashed instance, or say, disk full. Thus need details of the instance.