Corrupted Aria tables on Innobackupex backups

Bug #1331461 reported by Jean Weisbuch
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Percona XtraBackup moved to https://jira.percona.com/projects/PXB
Fix Released
Low
Hrvoje Matijakovic
2.1
Invalid
Low
Unassigned
2.2
Fix Released
Low
Hrvoje Matijakovic
2.3
Fix Released
Low
Hrvoje Matijakovic

Bug Description

The Aria storage engine is part of MariaDB and has been integrated in it for many years and Aria table files backup support has been added to innobackupex in 2011.

The issue is that the engine uses recovery log files and an "aria_log_control" file that are not backuped by innobackupex.

As stated on the documentation (https://mariadb.com/kb/en/aria-faq/#when-is-it-safe-to-remove-old-log-files), starting MariaDB without the "aria_log_control" file will mark all the Aria tables as corrupted with this error when doing a CHECK on the table : "Table is from another system and must be zerofilled or repaired to be usable on this system".

It means that the Aria tables from an Innobackupex backup must be "repaired" before being usable (and it be quite long depending on the size of the table) but it is not documented and no warning is throwed on Innobackupex about that.

- A solution would be to launch a "aria_chk --zerofil table" on Aria tables at the "innobackupex --apply-log" on the Aria tables present on the backup.
- Another solution would be to document this behavior on the Innobackupex documentation and throw a message at the end of the innobackupex execution so that users are aware of that limitation.

Tags: doc mariadb
Revision history for this message
Nilnandan Joshi (nilnandan-joshi) wrote :
Download full text (7.4 KiB)

Verified with MariaDB 10,

mysql> show create table nil_test \G
*************************** 1. row ***************************
       Table: nil_test
Create Table: CREATE TABLE `nil_test` (
  `id` int(11) DEFAULT NULL,
  `name` varchar(10) DEFAULT NULL
) ENGINE=Aria DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
1 row in set (0.00 sec)

nilnandan.joshi@Perconallc-Support:~/sandboxes/msb_10_0_13/data$ ls -al
total 241692
drwx------ 6 nilnandan.joshi admin 4096 Aug 27 11:10 .
drwxr-xr-x 4 nilnandan.joshi admin 4096 Aug 27 11:09 ..
-rw-rw---- 1 nilnandan.joshi admin 68362240 Aug 27 11:13 aria_log.00000001
-rw-rw---- 1 nilnandan.joshi admin 52 Aug 27 11:13 aria_log_control
-rw-rw---- 1 nilnandan.joshi admin 12582912 Aug 27 11:09 ibdata1
-rw-rw---- 1 nilnandan.joshi admin 50331648 Aug 27 11:09 ib_logfile0
-rw-rw---- 1 nilnandan.joshi admin 50331648 Aug 27 11:09 ib_logfile1
-rw-r----- 1 nilnandan.joshi admin 1643 Aug 27 11:09 msandbox.err
-rw-rw---- 1 nilnandan.joshi admin 0 Aug 27 11:09 multi-master.info
drwx------ 2 nilnandan.joshi admin 4096 Aug 27 11:09 mysql
-rw-rw---- 1 nilnandan.joshi admin 6 Aug 27 11:09 mysql_sandbox10013.pid
drwx------ 2 nilnandan.joshi admin 96 Aug 27 11:11 nil
drwx------ 2 nilnandan.joshi admin 4096 Aug 27 11:09 performance_schema
drwx------ 2 nilnandan.joshi admin 10 Aug 27 11:09 test
nilnandan.joshi@Perconallc-Support:~/sandboxes/msb_10_0_13/data$

nilnandan.joshi@Perconallc-Support:~/sandboxes/msb_10_0_13$ sudo innobackupex --defaults-file=/home/nilnandan.joshi/sandboxes/msb_10_0_13/my.sandbox.cnf --user=root --password=msandbox --socket=/tmp/mysql_sandbox10013.sock /home/nilnandan.joshi/backup

InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy
and Percona LLC and/or its affiliates 2009-2013. All Rights Reserved.

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

Get the latest version of Percona XtraBackup, documentation, and help resources:
http://www.percona.com/xb/p

140827 11:49:49 innobackupex: Connecting to MySQL server with DSN 'dbi:mysql:;mysql_read_default_file=/home/nilnandan.joshi/sandboxes/msb_10_0_13/my.sandbox.cnf;mysql_read_default_group=xtrabackup;mysql_socket=/tmp/mysql_sandbox10013.sock' as 'root' (using password: YES).
140827 11:49:49 innobackupex: Connected to MySQL server
140827 11:49:49 innobackupex: Executing a version check against the server...
140827 11:49:49 innobackupex: Done.
IMPORTANT: Please check that the backup run completes successfully.
           At the end of a successful backup run innobackupex
           prints "completed OK!".

innobackupex: Using mysql server version 10.0.13-MariaDB

innobackupex: Created backup directory /home/nilnandan.joshi/backup/2014-08-27_11-49-49

140827 11:49:49 innobackupex: Starting ibbackup with command: xtrabackup --defaults-file="/home/nilnandan.joshi/sandboxes/msb_10_0_13/my.sandbox.cnf" --defaults-group="mysqld" --backup --suspend-at-end --target-dir=/home/nilnandan.joshi/backup/2014-08-27_11-49-49 --tmpdir=/home/nilnandan.joshi/sandboxes/msb_10_0_13/tmp --extra-lsndir='/home/nilnandan.joshi/sandboxes/msb_10_0_13/tmp'
innobacku...

Read more...

Changed in percona-xtrabackup:
status: New → Confirmed
Revision history for this message
Alexey Kopytov (akopytov) wrote :

Let's document this as a limitation for Aria tables.

tags: added: doc
removed: aria innobackupex
Revision history for this message
Hrvoje Matijakovic (hrvojem) wrote :
Revision history for this message
Shahriyar Rzayev (rzayev-sehriyar) wrote :

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

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

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.