mirror of
https://github.com/MariaDB/server.git
synced 2026-05-06 15:15:34 +02:00
MDEV-25221 Do not remove source file, if copy_file() fails in mariabackup --move-back
Remove an incompletely copied destination file.
This commit is contained in:
parent
35ee4aa4e3
commit
08cb5d8483
11 changed files with 61 additions and 5 deletions
|
|
@ -0,0 +1,9 @@
|
|||
CREATE TABLE t(i INT) ENGINE INNODB;
|
||||
INSERT INTO t VALUES(1);
|
||||
# xtrabackup backup
|
||||
# xtrabackup prepare
|
||||
# restart server
|
||||
SELECT * FROM t;
|
||||
i
|
||||
1
|
||||
DROP TABLE t;
|
||||
25
mysql-test/suite/mariabackup/error_during_copyback.test
Normal file
25
mysql-test/suite/mariabackup/error_during_copyback.test
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
--source include/have_debug.inc
|
||||
CREATE TABLE t(i INT) ENGINE INNODB;
|
||||
INSERT INTO t VALUES(1);
|
||||
echo # xtrabackup backup;
|
||||
let $targetdir=$MYSQLTEST_VARDIR/tmp/backup;
|
||||
--disable_result_log
|
||||
exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --backup --target-dir=$targetdir;
|
||||
--enable_result_log
|
||||
echo # xtrabackup prepare;
|
||||
--disable_result_log
|
||||
exec $XTRABACKUP --prepare --target-dir=$targetdir;
|
||||
let $_datadir= `SELECT @@datadir`;
|
||||
--source include/shutdown_mysqld.inc
|
||||
rmdir $_datadir;
|
||||
error 1;
|
||||
exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --copy-back --datadir=$_datadir --target-dir=$targetdir --dbug=+d,copy_file_error;
|
||||
list_files $_datadir;
|
||||
rmdir $_datadir;
|
||||
exec $XTRABACKUP --defaults-file=$MYSQLTEST_VARDIR/my.cnf --copy-back --datadir=$_datadir --target-dir=$targetdir;
|
||||
echo # restart server;
|
||||
--source include/start_mysqld.inc
|
||||
SELECT * FROM t;
|
||||
DROP TABLE t;
|
||||
rmdir $targetdir;
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue