Browse Source
Bug#30459 Partitioning across disks failing on Windows
Bug#30459 Partitioning across disks failing on Windows
Problem was that there are no support for symlinked files on Windows for mysqld. So we fail when trying to create them. Solution: Ignore the DATA/INDEX DIRECTORY clause for partitions and push a warning. (Just like a MyISAM table) mysql-test/r/partition.result: Bug#30459 Partitioning across disks failing on Windows Moved symlink specific tests to partition_symlink result file mysql-test/r/partition_symlink.result: Bug#30459 Partitioning across disks failing on Windows Moved symlink specific tests from partition.test result file mysql-test/r/partition_windows.result: Bug#30459 Partitioning across disks failing on Windows result file mysql-test/t/partition.test: Bug#30459 Partitioning across disks failing on Windows Moved symlink specific tests to partition_symlink test file mysql-test/t/partition_symlink.test: Bug#30459 Partitioning across disks failing on Windows Moved symlink specific tests from partition.test test file mysql-test/t/partition_windows.test: Bug#30459 Partitioning across disks failing on Windows test filepull/374/head
7 changed files with 144 additions and 103 deletions
-
28mysql-test/r/partition.result
-
31mysql-test/r/partition_symlink.result
-
40mysql-test/r/partition_windows.result
-
47mysql-test/t/partition.test
-
50mysql-test/t/partition_symlink.test
-
37mysql-test/t/partition_windows.test
-
14sql/partition_info.cc
@ -1,14 +1,30 @@ |
|||
DROP TABLE IF EXISTS `example`; |
|||
CREATE TABLE `example` ( |
|||
`ID_EXAMPLE` int(10) unsigned NOT NULL AUTO_INCREMENT, |
|||
`DESCRIPTION` varchar(30) NOT NULL, |
|||
`LEVEL` smallint(5) unsigned DEFAULT NULL, |
|||
PRIMARY KEY (`ID_EXAMPLE`) |
|||
DROP TABLE IF EXISTS t1; |
|||
CREATE TABLE t1 ( |
|||
c1 int(10) unsigned NOT NULL AUTO_INCREMENT, |
|||
c2 varchar(30) NOT NULL, |
|||
c3 smallint(5) unsigned DEFAULT NULL, |
|||
PRIMARY KEY (c1) |
|||
) ENGINE = MYISAM |
|||
PARTITION BY HASH(ID_EXAMPLE)( |
|||
PARTITION p0 DATA DIRECTORY = 'C:/build/5.1/data/partitiontest/p0Data', |
|||
PARTITION p1 DATA DIRECTORY = 'C:/build/5.1/data/partitiontest/p1Data', |
|||
PARTITION p2 DATA DIRECTORY = 'C:/build/5.1/data/partitiontest/p2Data', |
|||
PARTITION p3 DATA DIRECTORY = 'C:/build/5.1/data/partitiontest/p3Data' |
|||
PARTITION BY HASH(c1)( |
|||
PARTITION p0 |
|||
DATA DIRECTORY = 'C:/mysqltest/p0Data' |
|||
INDEX DIRECTORY = 'D:/mysqltest/p0Index', |
|||
PARTITION p1, |
|||
PARTITION p2 |
|||
DATA DIRECTORY = 'E:/mysqltest/p2Data' |
|||
INDEX DIRECTORY = 'F:/mysqltest/p2Index' |
|||
); |
|||
ERROR HY000: Can't create/write to file 'C:\build\5.1\data\partitiontest\p0Data\example#P#p0.MYD' (Errcode: 2) |
|||
Warnings: |
|||
Warning 0 DATA DIRECTORY option ignored |
|||
Warning 0 INDEX DIRECTORY option ignored |
|||
Warning 0 DATA DIRECTORY option ignored |
|||
Warning 0 INDEX DIRECTORY option ignored |
|||
INSERT INTO t1 VALUES (NULL, "first", 1); |
|||
INSERT INTO t1 VALUES (NULL, "second", 2); |
|||
INSERT INTO t1 VALUES (NULL, "third", 3); |
|||
ALTER TABLE t1 ADD PARTITION (PARTITION p3 DATA DIRECTORY = 'G:/mysqltest/p3Data' INDEX DIRECTORY = 'H:/mysqltest/p3Index'); |
|||
Warnings: |
|||
Warning 0 DATA DIRECTORY option ignored |
|||
Warning 0 INDEX DIRECTORY option ignored |
|||
INSERT INTO t1 VALUES (NULL, "last", 4); |
|||
DROP TABLE t1; |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue