summaryrefslogtreecommitdiff
path: root/mysql-test/suite/innodb/t/skip_symbolic_links.test
blob: b5274d220c8b1c8ff070895691272bbf33375091 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
--source include/have_innodb.inc
--source include/not_windows.inc

SELECT @@have_symlink;
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
eval CREATE TABLE t1(a INT) ENGINE=InnoDB DATA DIRECTORY '$MYSQL_TMP_DIR';
DROP TABLE t1;
CREATE TABLE t1(a INT) ENGINE=InnoDB;

--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
eval ALTER TABLE t1 DATA DIRECTORY '$MYSQL_TMP_DIR';
SHOW CREATE TABLE t1;

DROP TABLE t1;

--let $restart_parameters=--symbolic-links
--source include/restart_mysqld.inc

--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
eval CREATE TABLE t1(a INT PRIMARY KEY, b INT) ENGINE=InnoDB
DATA DIRECTORY '$MYSQL_TMP_DIR';
--replace_result $MYSQL_TMP_DIR MYSQL_TMP_DIR
eval CREATE TABLE t2(a INT PRIMARY KEY, b INT) ENGINE=InnoDB
DATA DIRECTORY '$MYSQL_TMP_DIR';

TRUNCATE TABLE t1;
TRUNCATE TABLE t2;

--let $restart_parameters=
--source include/restart_mysqld.inc

# Native ALTER will retain DATA DIRECTORY
ALTER TABLE t1 FORCE, ALGORITHM=INPLACE;
ALTER TABLE t2 FORCE, ALGORITHM=COPY;
OPTIMIZE TABLE t1;
--list_files $MYSQL_TMP_DIR/test
DROP TABLE t2;

RENAME TABLE t1 TO t2;
ALTER TABLE t2 ADD UNIQUE INDEX(b), RENAME TO t3;

ALTER TABLE t3 RENAME TO t2;
ALTER TABLE t2 DROP INDEX b, RENAME TO t1;
ALTER TABLE t1 CHANGE b c INT;
ALTER TABLE t1 CHANGE c b INT NOT NULL;

--list_files $MYSQL_TMP_DIR/test
# TRUNCATE TABLE will discard DATA DIRECTORY.
TRUNCATE TABLE t1;
--list_files $MYSQL_TMP_DIR/test
DROP TABLE t1;