Announcement

Announcement Module
Collapse
No announcement yet.

Applying logs in partial backup + incremental backups: Failing assertion in InnoDB

Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Applying logs in partial backup + incremental backups: Failing assertion in InnoDB

    Hello,

    I want to do incremental backups of a partial backup containing only one of the MySQL's database. I have the innodb_file_per_table setting enabled.

    In http://www.percona.com/doc/percona-x...ables_ibk.html is written that to prepare the backup for the restore, you must run:
    $ innobackupex --apply-log --export /path/to/backup
    I am assuming that this is done after applying the log of all the incremental backups. It is in this first step when I get the failure. I use the following command but I have also tested it without the --redo-only and without both '--redo-only' and --export'.
    innobackupex --user root --password 8n8UZIih --apply-log --redo-only --export /tmp/bp/2013-05-27T18-46-15.d/full
    The full output of the command is:
    xtrabackup_55 version 2.1.3 for Percona Server 5.5.16 Linux (i686) (revision id: 608)
    xtrabackup: auto-enabling --innodb-file-per-table due to the --export option
    xtrabackup: cd to /tmp/bp/2013-05-27T18-46-15.d/2013-05-27_20-46-15
    xtrabackup: This target seems to be not prepared yet.
    xtrabackup: xtrabackup_logfile detected: size=2359296, start_lsn=(2113775)
    xtrabackup: Temporary instance for recovery is set as followings.
    xtrabackup: innodb_data_home_dir = ./
    xtrabackup: innodb_data_file_path = ibdata1:10M:autoextend
    xtrabackup: innodb_log_group_home_dir = ./
    xtrabackup: innodb_log_files_in_group = 1
    xtrabackup: innodb_log_file_size = -4643641983856541696
    xtrabackup: Temporary instance for recovery is set as followings.
    xtrabackup: innodb_data_home_dir = ./
    xtrabackup: innodb_data_file_path = ibdata1:10M:autoextend
    xtrabackup: innodb_log_group_home_dir = ./
    xtrabackup: innodb_log_files_in_group = 1
    xtrabackup: innodb_log_file_size = -4643641983856541696
    xtrabackup: Starting InnoDB instance for recovery.
    xtrabackup: Using 104857600 bytes for buffer pool (set by --use-memory parameter)
    130510 17:13:09 InnoDB: The InnoDB memory heap is disabled
    130510 17:13:09 InnoDB: Mutexes and rw_locks use GCC atomic builtins
    130510 17:13:09 InnoDB: Compressed tables use zlib 1.2.3
    130510 17:13:09 InnoDB: Initializing buffer pool, size = 100.0M
    130510 17:13:09 InnoDB: Completed initialization of buffer pool
    130510 17:13:09 InnoDB: highest supported file format is Barracuda.
    InnoDB: The log sequence number in ibdata files does not match
    InnoDB: the log sequence number in the ib_logfiles!
    130510 17:13:09 InnoDB: Database was not shut down normally!
    InnoDB: Starting crash recovery.
    InnoDB: Reading tablespace information from the .ibd files...
    130510 17:13:10 InnoDB: Assertion failure in thread 3074922176 in file fsp0fsp.c line 2949
    InnoDB: Failing assertion: space != 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.5/...-recovery.html
    InnoDB: about forcing recovery.
    Aborted
    innobackupex: Error:
    innobackupex: ibbackup failed at /usr/bin/innobackupex line 389.



    Someone could give me a pointer about this problem?. Regards, Javier

  • #2
    Checking again the proccess I saw that I have forget to enable innodb_file_per_table in the target server (it was enabled only in backed up server). I enabled and try again, I got a different error message. if I retry I got again the assertion error mesage.

    The output complains that 'Error: all log files must be created at the same time.' Maybe should I use a different commands to prepare the partial + incremental backup?.

    The new output:

    InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy
    and Percona Ireland Ltd 2009-2012. All Rights Reserved.

    This software is published under
    the GNU GENERAL PUBLIC LICENSE Version 2, June 1991.

    IMPORTANT: Please check that the apply-log run completes successfully.
    At the end of a successful apply-log run innobackupex
    prints "completed OK!".



    130510 17:11:39 innobackupex: Starting ibbackup with command: xtrabackup_55 --defaults-file="/tmp/bp/2013-05-27T18-46-15.d/2013-05-27_20-46-15/backup-my.cnf" --defaults-group="mysqld" --prepare --target-dir=/tmp/bp/2013-05-27T18-46-15.d/2013-05-27_20-46-15 --export --apply-log-only --tmpdir=/tmp

    xtrabackup_55 version 2.1.3 for Percona Server 5.5.16 Linux (i686) (revision id: 608)
    xtrabackup: auto-enabling --innodb-file-per-table due to the --export option
    xtrabackup: cd to /tmp/bp/2013-05-27T18-46-15.d/2013-05-27_20-46-15
    xtrabackup: This target seems to be not prepared yet.
    xtrabackup: xtrabackup_logfile detected: size=2097152, start_lsn=(2113775)
    xtrabackup: Temporary instance for recovery is set as followings.
    xtrabackup: innodb_data_home_dir = ./
    xtrabackup: innodb_data_file_path = ibdata1:10M:autoextend
    xtrabackup: innodb_log_group_home_dir = ./
    xtrabackup: innodb_log_files_in_group = 1
    xtrabackup: innodb_log_file_size = -4632473763217145856
    xtrabackup: Temporary instance for recovery is set as followings.
    xtrabackup: innodb_data_home_dir = ./
    xtrabackup: innodb_data_file_path = ibdata1:10M:autoextend
    xtrabackup: innodb_log_group_home_dir = ./
    xtrabackup: innodb_log_files_in_group = 1
    xtrabackup: innodb_log_file_size = -4632473763217145856
    xtrabackup: Starting InnoDB instance for recovery.
    xtrabackup: Using 104857600 bytes for buffer pool (set by --use-memory parameter)
    130510 17:11:39 InnoDB: The InnoDB memory heap is disabled
    130510 17:11:39 InnoDB: Mutexes and rw_locks use GCC atomic builtins
    130510 17:11:39 InnoDB: Compressed tables use zlib 1.2.3
    130510 17:11:39 InnoDB: Initializing buffer pool, size = 100.0M
    130510 17:11:39 InnoDB: Completed initialization of buffer pool
    InnoDB: The first specified data file ./ibdata1 did not exist:
    InnoDB: a new database to be created!
    130510 17:11:39 InnoDB: Setting file ./ibdata1 size to 10 MB
    InnoDB: Database physically writes the file full: wait...
    130510 17:11:39 InnoDB: Error: all log files must be created at the same time.
    130510 17:11:39 InnoDB: All log files must be created also in database creation.
    130510 17:11:39 InnoDB: If you want bigger or smaller log files, shut down the
    130510 17:11:39 InnoDB: database and make sure there were no errors in shutdown.
    130510 17:11:39 InnoDB: Then delete the existing log files. Edit the .cnf file
    130510 17:11:39 InnoDB: and start the database again.
    xtrabackup: innodb_init(): Error occured.
    innobackupex: Error:
    innobackupex: ibbackup failed at /usr/bin/innobackupex line 389.

    Comment

    Working...
    X