bug1535312 test failure
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Percona XtraBackup moved to https://jira.percona.com/projects/PXB | Status tracked in 2.4 | |||||
2.4 |
Fix Released
|
High
|
Sergei Glushchenko |
Bug Description
Test case fails sometimes with SEGV and following stack trace
17:17:32 UTC - xtrabackup got signal 11 ;
This could be because you hit a bug or data is corrupted.
This error can also be caused by malfunctioning hardware.
Attempting to collect some information that could help diagnose the problem.
As this is a crash and something is definitely wrong, the information
collection process might fail.
Thread pointer: 0x0
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0 thread_stack 0x10000
/data/pxb/
/data/pxb/
/lib64/
/lib64/
/lib64/
/lib64/
/lib64/
/data/pxb/
/data/pxb/
/data/pxb/
/data/pxb/
/data/pxb/
/data/pxb/
/data/pxb/
/data/pxb/
/data/pxb/
/data/pxb/
/data/pxb/
/data/pxb/
/lib64/
/data/pxb/
tags: | added: qa57 |
Once datafile is opened by Datafile: :validate_ for_recovery it then is trying to set the name. to_space_ name which expect filepath to look like ./dbname/ table_name. ibd. The issue is that Datafile::set_name makes decision whether tablespace is file-per-table or genral depending on FSP flags stored on first page. During the recovery FSP flags could sometimes be unitialized. In this case fil_path_ to_space_ name will crash trying to parse file path which looks like './datafile.ibd'
Datafile::set_name in turn behave different depending on the type of the tablespace.
For file-per-table tablespaces it will invoke fil_path_