mirror of
https://github.com/MariaDB/server.git
synced 2025-01-30 18:41:56 +01:00
c1d7b4575e
The InnoDB DATA DIRECTORY attribute is not implemented via symbolic links but something similar, *.isl files that contain the names of data files. InnoDB failed to ignore the DATA DIRECTORY attribute even though the server was started with --skip-symbolic-links. Native ALTER TABLE in InnoDB will retain the DATA DIRECTORY attribute of the table, no matter if the table will be rebuilt or not. Generic ALTER TABLE (with ALGORITHM=COPY) as well as TRUNCATE TABLE will discard the DATA DIRECTORY attribute. All tests have been run with and without the ./mtr option --mysqld=--skip-symbolic-links and some tests that use the InnoDB DATA DIRECTORY attribute have been adjusted for this.
24 lines
797 B
Text
24 lines
797 B
Text
--source include/have_symlink.inc
|
|
let $table_data_dir=$MYSQLTEST_VARDIR/ddir;
|
|
mkdir $table_data_dir;
|
|
--replace_result $table_data_dir table_data_dir
|
|
EVAL CREATE TABLE t(a INT) ENGINE=InnoDB DATA DIRECTORY='$table_data_dir';
|
|
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
|
|
--source include/shutdown_mysqld.inc
|
|
echo # xtrabackup prepare;
|
|
--disable_result_log
|
|
exec $XTRABACKUP --prepare --target-dir=$targetdir;
|
|
--source include/start_mysqld.inc
|
|
DROP TABLE t;
|
|
rmdir $table_data_dir;
|
|
-- source include/restart_and_restore.inc
|
|
--enable_result_log
|
|
SELECT * FROM t;
|
|
DROP TABLE t;
|
|
rmdir $targetdir;
|
|
rmdir $table_data_dir;
|