xtrabackup_56 crashes with segfault during --prepare
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MySQL Server |
Unknown
|
Unknown
|
|||
Percona XtraBackup moved to https://jira.percona.com/projects/PXB |
Fix Released
|
High
|
Alexey Kopytov | ||
2.1 |
Fix Released
|
High
|
Alexey Kopytov | ||
2.2 |
Fix Released
|
High
|
Alexey Kopytov |
Bug Description
innodb_
version.
version_
version_
version_
# xtrabackup --version
xtrabackup version 2.1.8 for Percona Server 5.1.73 unknown-linux-gnu (x86_64) (revision id: 733)
Steps:
[1]
# xtrabackup_56 --backup --target-dir=.
...
...
...
xtrabackup: The latest check point (for incremental): '1260343926214'
xtrabackup: Stopping log copying thread.
.>> log scanned up to (1260528996709)
xtrabackup: Transaction log of lsn (1259945473453) to (1260528996709) was copied.
[2]
# xtrabackup_56 --prepare --target-dir=. --use-memory=4G
xtrabackup_56 version 2.1.8 for MySQL server 5.6.15 Linux (x86_64) (revision id: 733)
xtrabackup: cd to /home/pavel/
xtrabackup: This target seems to be not prepared yet.
xtrabackup: xtrabackup_logfile detected: size=656474112, start_lsn=
xtrabackup: using the following InnoDB configuration for recovery:
xtrabackup: innodb_
xtrabackup: innodb_
xtrabackup: innodb_
xtrabackup: innodb_
xtrabackup: innodb_
xtrabackup: using the following InnoDB configuration for recovery:
xtrabackup: innodb_
xtrabackup: innodb_
xtrabackup: innodb_
xtrabackup: innodb_
xtrabackup: innodb_
xtrabackup: Starting InnoDB instance for recovery.
xtrabackup: Using 4294967296 bytes for buffer pool (set by --use-memory parameter)
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use GCC atomic builtins
InnoDB: Compressed tables use zlib 1.2.3
InnoDB: Using CPU crc32 instructions
InnoDB: Initializing buffer pool, size = 4.0G
InnoDB: Completed initialization of buffer pool
InnoDB: Highest supported file format is Barracuda.
InnoDB: Log scan progressed past the checkpoint lsn 1259945473453
InnoDB: Database was not shutdown normally!
InnoDB: Starting crash recovery.
InnoDB: Reading tablespace information from the .ibd files...
InnoDB: Restoring possible half-written data pages
InnoDB: from the doublewrite buffer...
InnoDB: Doing recovery: scanned up to log sequence number 1259950715904 (0%)
InnoDB: Doing recovery: scanned up to log sequence number 1259955958784 (1%)
InnoDB: Doing recovery: scanned up to log sequence number 1259961201664 (2%)
InnoDB: Doing recovery: scanned up to log sequence number 1259966444544 (3%)
InnoDB: Doing recovery: scanned up to log sequence number 1259971687424 (4%)
InnoDB: Doing recovery: scanned up to log sequence number 1259976930304 (5%)
InnoDB: Doing recovery: scanned up to log sequence number 1259982173184 (6%)
InnoDB: Doing recovery: scanned up to log sequence number 1259987416064 (7%)
InnoDB: Doing recovery: scanned up to log sequence number 1259992658944 (8%)
InnoDB: Doing recovery: scanned up to log sequence number 1259997901824 (8%)
InnoDB: Doing recovery: scanned up to log sequence number 1260003144704 (9%)
InnoDB: Doing recovery: scanned up to log sequence number 1260008387584 (10%)
InnoDB: Doing recovery: scanned up to log sequence number 1260013630464 (11%)
InnoDB: Doing recovery: scanned up to log sequence number 1260018873344 (12%)
InnoDB: Doing recovery: scanned up to log sequence number 1260024116224 (13%)
InnoDB: Doing recovery: scanned up to log sequence number 1260029359104 (14%)
InnoDB: Doing recovery: scanned up to log sequence number 1260034601984 (15%)
InnoDB: Doing recovery: scanned up to log sequence number 1260039844864 (16%)
InnoDB: Doing recovery: scanned up to log sequence number 1260045087744 (17%)
InnoDB: Doing recovery: scanned up to log sequence number 1260050330624 (17%)
InnoDB: Doing recovery: scanned up to log sequence number 1260055573504 (18%)
InnoDB: Doing recovery: scanned up to log sequence number 1260060816384 (19%)
InnoDB: Doing recovery: scanned up to log sequence number 1260066059264 (20%)
InnoDB: Doing recovery: scanned up to log sequence number 1260071302144 (21%)
InnoDB: Doing recovery: scanned up to log sequence number 1260076545024 (22%)
InnoDB: Doing recovery: scanned up to log sequence number 1260081787904 (23%)
InnoDB: Doing recovery: scanned up to log sequence number 1260087030784 (24%)
InnoDB: Doing recovery: scanned up to log sequence number 1260092273664 (25%)
InnoDB: Doing recovery: scanned up to log sequence number 1260097516544 (26%)
InnoDB: Doing recovery: scanned up to log sequence number 1260102759424 (26%)
InnoDB: Doing recovery: scanned up to log sequence number 1260108002304 (27%)
InnoDB: Doing recovery: scanned up to log sequence number 1260113245184 (28%)
InnoDB: Doing recovery: scanned up to log sequence number 1260118488064 (29%)
InnoDB: Doing recovery: scanned up to log sequence number 1260123730944 (30%)
InnoDB: Doing recovery: scanned up to log sequence number 1260128973824 (31%)
InnoDB: Doing recovery: scanned up to log sequence number 1260134216704 (32%)
InnoDB: Doing recovery: scanned up to log sequence number 1260139459584 (33%)
InnoDB: Doing recovery: scanned up to log sequence number 1260144702464 (34%)
InnoDB: Doing recovery: scanned up to log sequence number 1260149945344 (35%)
Segmentation fault (core dumped)
[3]
# gdb xtrabackup_56 core.11437
(gdb) bt
#0 0x00007fe95cfb2670 in __strrchr_sse42 () from /lib64/libc.so.6
#1 0x00000000005cae90 in strrchr (data_dir_path=0x0, tablename=
#2 os_file_
at /usr/src/
#3 0x00000000004d72c3 in fil_create_
flags2=<value optimized out>, size=4) at /usr/src/
#4 0x00000000004d7a89 in fil_op_
space_id=4781, log_flags=<value optimized out>) at /usr/src/
#5 0x0000000000490b9b in recv_parse_log_recs (available_
contiguous_
#6 recv_scan_log_recs (available_
contiguous_
#7 0x0000000000491884 in recv_group_
at /usr/src/
#8 recv_recovery_
at /usr/src/
#9 0x00000000004bf0fb in innobase_
#10 0x00000000004553ab in innodb_init () at xtrabackup.cc:1438
#11 xtrabackup_
#12 0x000000000045777b in main (argc=0, argv=0x1fa0ed0) at xtrabackup.cc:6035
I use MySQL 5.6 "DATA DIRECTORY" feature. But I don't know whether it cause a bug or not.
Feel free if you need any further information.
Related branches
- Alexey Kopytov (community): Approve
-
Diff: 326 lines (+102/-27)2 files modifiedpatches/innodb56.patch (+49/-27)
test/t/bug1291299.sh (+53/-0)
- Alexey Kopytov (community): Approve
-
Diff: 83 lines (+67/-0)2 files modifiedstorage/innobase/fil/fil0fil.cc (+14/-0)
storage/innobase/xtrabackup/test/t/bug1291299.sh (+53/-0)
Thanks for the stacktrace!
It appears to be a problem in the InnoDB code which I have reported as http:// bugs.mysql. com/bug. php?id= 72022
The fix is rather simple, I hope we can provide a fix for XtraBackup without waiting for an upstream one.