InnoDB redo log resizing may crash if log tracking is enabled: Failing assertion: node->n_pending == 0 in fil0fil.cc line 899

Bug #1204072 reported by Alexey Kopytov on 2013-07-23
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Percona Server moved to https://jira.percona.com/projects/PS
Fix Released
Medium
Laurynas Biveinis
5.1
Invalid
Undecided
Unassigned
5.5
Invalid
Undecided
Unassigned
5.6
Fix Released
Medium
Laurynas Biveinis

Bug Description

With --innodb-track-changed-pages=TRUE the server sometimes fails on startup with the following assertion when it has to resize the log files:

2013-07-22 11:45:38 21027 [Note] InnoDB: starting tracking changed pages from LSN 1625987

2013-07-22 11:45:38 21027 [Warning] InnoDB: Resizing redo log from 2*3072 to 2*64 pages, LSN=1625987
2013-07-22 11:45:38 21027 [Warning] InnoDB: Starting to delete and rewrite log files.
2013-07-22 11:45:38 21027 [Note] InnoDB: Setting log file ./ib_logfile101 size to 1 MB
2013-07-22 11:45:38 21027 [Note] InnoDB: Setting log file ./ib_logfile1 size to 1 MB
2013-07-22 11:45:38 7f09b82817e0 InnoDB: Assertion failure in thread 139679721068512 in file fil0fil.cc line 899
InnoDB: Failing assertion: node->n_pending == 0
InnoDB: We intentionally generate a memory trap.
InnoDB: Submit a detailed bug report to http://bugs.mysql.com.
InnoDB: If you get repeated assertion failures or crashes, even
InnoDB: immediately after the mysqld startup, there may be
InnoDB: corruption in the InnoDB tablespace. Please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html
InnoDB: about forcing recovery.
11:45:38 UTC - mysqld got signal 6 ;

It occurs quite frequently in XB Jenkins after updating PS version used by the test suite from PS 5.6.10 to PS 5.6.11 (i.e. the one where page tracking is available: http://jenkins.percona.com/view/XtraBackup/job/percona-xtrabackup-2.1-param/386/BUILD_TYPE=debug,Host=centos6-64,xtrabackuptarget=xtradb56/testReport/junit/%28root%29/t_xb_incremental_compressed_bitmap_16kb/sh/

It doesn't seem to occur with page tracking disabled, i.e. all xb_incremental_compressed_full_scan* tests pass.

I'm going to implement a workaround in XB tests for now so that the server doesn't have to resize the log files on startup, so this is not high priority.

Related branches

tags: added: bitmap

Indeed, log tracking initialization happens before the log file resizing.

tags: added: 56qual
Roel Van de Paar (roel11) wrote :

<laurynas> combination of log resizing and changed page tracking, easy workaround
<laurynas> targetting next release
<Roel> ok I'll update that

tags: removed: 56qual
summary: - InnoDB: Failing assertion: node->n_pending == 0 in fil0fil.cc line 899
+ InnoDB redo log resizing may crash if log tracking is enabled: Failing
+ assertion: node->n_pending == 0 in fil0fil.cc line 899
tags: added: xtradb

Percona now uses JIRA for bug reports so this bug report is migrated to: https://jira.percona.com/browse/PS-1399

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers