List:Commits« Previous MessageNext Message »
From:mattiasj Date:March 17 2008 3:11pm
Subject:bk commit into 5.1 tree (mattiasj:1.2566) BUG#35305
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of mattiasj.  When mattiasj does a push these changes
will be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html

ChangeSet@stripped, 2008-03-17 16:11:26+01:00, mattiasj@witty. +9 -0
  Bug#35305: partition_symlink test failures
  
  Updated the test due to bug 32167
  
  Corrected spelling of error message

  mysql-test/r/partition_not_windows.result@stripped, 2008-03-17 16:11:23+01:00, mattiasj@witty. +29 -11
    Updated test result due to test case changes and corrected spelling error

  mysql-test/r/partition_symlink.result@stripped, 2008-03-17 16:11:23+01:00, mattiasj@witty. +7 -0
    Bug#35305: partition_symlink test failure
    
    Updated test result due to test case changes

  mysql-test/r/symlink.result@stripped, 2008-03-17 16:11:23+01:00, mattiasj@witty. +15 -3
    Updated test result due to test case changes and corrected spelling error

  mysql-test/t/disabled.def@stripped, 2008-03-17 16:11:23+01:00, mattiasj@witty. +0 -1
    Bug#35305: partition_symlink test failure
    
    Enable the test after it has been fixed

  mysql-test/t/partition_not_windows.test@stripped, 2008-03-17 16:11:23+01:00, mattiasj@witty. +66 -20
    Removed disable/enable_query_log for better result files

  mysql-test/t/partition_symlink.test@stripped, 2008-03-17 16:11:23+01:00, mattiasj@witty. +4 -10
    Bug#35305: partition_symlink test failure
    
    Changes due to bug 32167

  mysql-test/t/symlink.test@stripped, 2008-03-17 16:11:24+01:00, mattiasj@witty. +11 -16
    using replace_result instead of disable_query_log

  sql/partition_info.cc@stripped, 2008-03-17 16:11:24+01:00, mattiasj@witty. +2 -2
    corrected spelling

  sql/sql_parse.cc@stripped, 2008-03-17 16:11:24+01:00, mattiasj@witty. +2 -2
    corrected spelling

diff -Nrup a/mysql-test/r/partition_not_windows.result b/mysql-test/r/partition_not_windows.result
--- a/mysql-test/r/partition_not_windows.result	2008-03-15 02:45:45 +01:00
+++ b/mysql-test/r/partition_not_windows.result	2008-03-17 16:11:23 +01:00
@@ -3,13 +3,13 @@ partition by range (a)
 subpartition by hash (a)
 (partition p0 VALUES LESS THAN (1) DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp'
 (SUBPARTITION subpart00, SUBPARTITION subpart01));
-Checking if file exists before alter
+# Checking if file exists before alter
 ALTER TABLE t1 REORGANIZE PARTITION p0 INTO
 (partition p1 VALUES LESS THAN (1) DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp'
 (SUBPARTITION subpart10, SUBPARTITION subpart11),
 partition p2 VALUES LESS THAN (2) DATA DIRECTORY = 'MYSQLTEST_VARDIR/tmp' INDEX DIRECTORY = 'MYSQLTEST_VARDIR/tmp'
 (SUBPARTITION subpart20, SUBPARTITION subpart21));
-Checking if file exists after alter
+# Checking if file exists after alter
 drop table t1;
 set @org_mode=@@sql_mode;
 set @@sql_mode='NO_DIR_IN_CREATE';
@@ -36,11 +36,11 @@ set @@sql_mode=@org_mode;
 CREATE TABLE t1(a INT)
 PARTITION BY KEY (a)
 (PARTITION p0 DATA DIRECTORY 'TEST_DIR/master-data/test');
-ERROR HY000: Incorrect arguments to DATA DIRECORY
+ERROR HY000: Incorrect arguments to DATA DIRECTORY
 CREATE TABLE t1(a INT)
 PARTITION BY KEY (a)
 (PARTITION p0 INDEX DIRECTORY 'TEST_DIR/master-data/test');
-ERROR HY000: Incorrect arguments to INDEX DIRECORY
+ERROR HY000: Incorrect arguments to INDEX DIRECTORY
 CREATE TABLE ts (id INT, purchased DATE)
 PARTITION BY RANGE(YEAR(purchased))
 SUBPARTITION BY HASH(TO_DAYS(purchased)) (
@@ -50,7 +50,7 @@ DATA DIRECTORY = 'TEST_DIR/master-data/t
 SUBPARTITION s0b
 DATA DIRECTORY = 'TEST_DIR/master-data/test'
 ));
-ERROR HY000: Incorrect arguments to DATA DIRECORY
+ERROR HY000: Incorrect arguments to DATA DIRECTORY
 CREATE TABLE ts (id INT, purchased DATE)
 PARTITION BY RANGE(YEAR(purchased))
 SUBPARTITION BY HASH(TO_DAYS(purchased)) (
@@ -60,7 +60,7 @@ INDEX DIRECTORY = 'TEST_DIR/master-data/
 SUBPARTITION s0b
 INDEX DIRECTORY = 'TEST_DIR/master-data/test'
 ));
-ERROR HY000: Incorrect arguments to INDEX DIRECORY
+ERROR HY000: Incorrect arguments to INDEX DIRECTORY
 DROP TABLE IF EXISTS `example`;
 CREATE TABLE `example` (
 `ID_EXAMPLE` int(10) unsigned NOT NULL AUTO_INCREMENT,
@@ -69,9 +69,27 @@ CREATE TABLE `example` (
 PRIMARY KEY (`ID_EXAMPLE`)
 ) ENGINE = MYISAM 
 PARTITION BY HASH(ID_EXAMPLE)(
-PARTITION p0 DATA DIRECTORY = '/build/5.1/data/partitiontest/p0Data',
-PARTITION p1 DATA DIRECTORY = '/build/5.1/data/partitiontest/p1Data',
-PARTITION p2 DATA DIRECTORY = '/build/5.1/data/partitiontest/p2Data',
-PARTITION p3 DATA DIRECTORY = '/build/5.1/data/partitiontest/p3Data'
+PARTITION p0 DATA DIRECTORY = 'MYSQLTEST_VARDIR/p0Data'
+INDEX DIRECTORY = 'MYSQLTEST_VARDIR/p0Index',
+PARTITION p1 DATA DIRECTORY = 'MYSQLTEST_VARDIR/p1Data'
+INDEX DIRECTORY = 'MYSQLTEST_VARDIR/p1Index',
+PARTITION p2 DATA DIRECTORY = 'MYSQLTEST_VARDIR/p2Data'
+INDEX DIRECTORY = 'MYSQLTEST_VARDIR/p2Index',
+PARTITION p3 DATA DIRECTORY = 'MYSQLTEST_VARDIR/p3Data'
+INDEX DIRECTORY = 'MYSQLTEST_VARDIR/p3Index'
 );
-ERROR HY000: Can't create/write to file '/build/5.1/data/partitiontest/p0Data/example#P#p0.MYD' (Errcode: 2)
+# Checking that MyISAM .MYD and .MYI are in test db and data/idx dir
+DROP TABLE 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`)
+) ENGINE = MYISAM 
+PARTITION BY HASH(ID_EXAMPLE)(
+PARTITION p0 DATA DIRECTORY = '/not/existent/p0Data',
+PARTITION p1 DATA DIRECTORY = '/not/existent/p1Data',
+PARTITION p2 DATA DIRECTORY = '/not/existent/p2Data',
+PARTITION p3 DATA DIRECTORY = '/not/existent/p3Data'
+);
+Got one of the listed errors
diff -Nrup a/mysql-test/r/partition_symlink.result b/mysql-test/r/partition_symlink.result
--- a/mysql-test/r/partition_symlink.result	2008-03-14 18:50:29 +01:00
+++ b/mysql-test/r/partition_symlink.result	2008-03-17 16:11:23 +01:00
@@ -81,6 +81,13 @@ Got one of the listed errors
 DROP DATABASE mysqltest2;
 USE test;
 DROP USER mysqltest_1@localhost;
+create table t2 (i int )
+partition by range (i)
+(
+partition p01 values less than (1000)
+data directory="MYSQLTEST_VARDIR/tmp"
+    index directory="MYSQLTEST_VARDIR/tmp"
+);
 set @org_mode=@@sql_mode;
 set @@sql_mode='NO_DIR_IN_CREATE';
 select @@sql_mode;
diff -Nrup a/mysql-test/r/symlink.result b/mysql-test/r/symlink.result
--- a/mysql-test/r/symlink.result	2008-03-14 19:13:50 +01:00
+++ b/mysql-test/r/symlink.result	2008-03-17 16:11:23 +01:00
@@ -22,6 +22,7 @@ insert into t1 (b) select b from t2;
 insert into t2 (b) select b from t1;
 insert into t1 (b) select b from t2;
 drop table t2;
+create table t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam data directory="MYSQLTEST_VARDIR/tmp" index directory="MYSQLTEST_VARDIR/run";
 insert into t9 select * from t1;
 check table t9;
 Table	Op	Msg_type	Msg_text
@@ -54,10 +55,16 @@ t9	CREATE TABLE `t9` (
   `d` int(11) NOT NULL,
   PRIMARY KEY (`a`)
 ) ENGINE=MyISAM AUTO_INCREMENT=16725 DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
+create table t1 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam data directory="tmp";
 Got one of the listed errors
+create database mysqltest;
+create table mysqltest.t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam index directory="/this-dir-does-not-exist";
 Got one of the listed errors
+create table mysqltest.t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam index directory="not-hard-path";
 Got one of the listed errors
+create table mysqltest.t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam index directory="MYSQLTEST_VARDIR/run";
 Got one of the listed errors
+create table mysqltest.t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam data directory="MYSQLTEST_VARDIR/tmp";
 Got one of the listed errors
 alter table t9 rename mysqltest.t9;
 select count(*) from mysqltest.t9;
@@ -74,6 +81,7 @@ t9	CREATE TABLE `t9` (
 ) ENGINE=MyISAM AUTO_INCREMENT=16725 DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/tmp/' INDEX DIRECTORY='MYSQLTEST_VARDIR/run/'
 drop database mysqltest;
 create table t1 (a int not null) engine=myisam;
+alter table t1 data directory="MYSQLTEST_VARDIR/tmp";
 Warnings:
 Warning	0	DATA DIRECTORY option ignored
 show create table t1;
@@ -82,6 +90,7 @@ t1	CREATE TABLE `t1` (
   `a` int(11) NOT NULL
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
 alter table t1 add b int;
+alter table t1 data directory="MYSQLTEST_VARDIR/log";
 Warnings:
 Warning	0	DATA DIRECTORY option ignored
 show create table t1;
@@ -90,6 +99,7 @@ t1	CREATE TABLE `t1` (
   `a` int(11) NOT NULL,
   `b` int(11) DEFAULT NULL
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
+alter table t1 index directory="MYSQLTEST_VARDIR/log";
 Warnings:
 Warning	0	INDEX DIRECTORY option ignored
 show create table t1;
@@ -102,18 +112,20 @@ drop table t1;
 CREATE TABLE t1(a INT)
 DATA DIRECTORY='TEST_DIR/tmp'
 INDEX DIRECTORY='TEST_DIR/tmp';
-ERROR HY000: Can't create/write to file 'TEST_DIR/tmp/t1.MYI' (Errcode: 17)
+Got one of the listed errors
 CREATE TABLE t2(a INT)
 DATA DIRECTORY='TEST_DIR/tmp'
 INDEX DIRECTORY='TEST_DIR/tmp';
 RENAME TABLE t2 TO t1;
 ERROR HY000: Can't create/write to file 'TEST_DIR/tmp/t1.MYI' (Errcode: 17)
 DROP TABLE t2;
+create temporary table t1 (a int) engine=myisam data directory="MYSQLTEST_VARDIR/log" select 9 a;
 show create table t1;
 Table	Create Table
 t1	CREATE TEMPORARY TABLE `t1` (
   `a` int(11) DEFAULT NULL
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1 DATA DIRECTORY='MYSQLTEST_VARDIR/log/'
+create temporary table t1 (a int) engine=myisam data directory="MYSQLTEST_VARDIR/log" select 99 a;
 show create table t1;
 Table	Create Table
 t1	CREATE TEMPORARY TABLE `t1` (
@@ -140,10 +152,10 @@ DROP TABLE t1;
 End of 5.0 tests
 CREATE TABLE t1(a INT)
 INDEX DIRECTORY='TEST_DIR/master-data/mysql';
-ERROR HY000: Incorrect arguments to INDEX DIRECORY
+ERROR HY000: Incorrect arguments to INDEX DIRECTORY
 CREATE TABLE t1(a INT)
 DATA DIRECTORY='TEST_DIR/master-data/test';
-ERROR HY000: Incorrect arguments to DATA DIRECORY
+ERROR HY000: Incorrect arguments to DATA DIRECTORY
 CREATE TABLE t1(a INT)
 DATA DIRECTORY='TEST_DIR/master-data/';
 DROP TABLE t1;
diff -Nrup a/mysql-test/t/disabled.def b/mysql-test/t/disabled.def
--- a/mysql-test/t/disabled.def	2008-03-15 09:08:33 +01:00
+++ b/mysql-test/t/disabled.def	2008-03-17 16:11:23 +01:00
@@ -21,4 +21,3 @@ ctype_create         : Bug#32965 main.ct
 status               : Bug#32966 main.status fails
 ps_ddl               : Bug#12093 2007-12-14 pending WL#4165 / WL#4166
 csv_alter_table      : Bug#33696 2008-01-21 pcrews no .result file - bug allows NULL columns in CSV tables
-partition_symlink    : Bug#35305 Make pushbuild green
diff -Nrup a/mysql-test/t/partition_not_windows.test b/mysql-test/t/partition_not_windows.test
--- a/mysql-test/t/partition_not_windows.test	2008-03-03 17:29:57 +01:00
+++ b/mysql-test/t/partition_not_windows.test	2008-03-17 16:11:23 +01:00
@@ -11,13 +11,9 @@
 # Bug 20770 Partitions: DATA DIRECTORY clause change in reorganize
 #                       doesn't remove old directory
 
---disable_query_log
-eval SET @data_dir = 'DATA DIRECTORY = ''$MYSQLTEST_VARDIR/tmp''';
-let $data_directory = `select @data_dir`;
-
-eval SET @inx_dir = 'INDEX DIRECTORY = ''$MYSQLTEST_VARDIR/tmp''';
-let $inx_directory = `select @inx_dir`;
---enable_query_log
+let $data_directory = DATA DIRECTORY = '$MYSQLTEST_VARDIR/tmp';
+
+let $inx_directory = INDEX DIRECTORY = '$MYSQLTEST_VARDIR/tmp';
 
 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 eval create table t1 (a int) engine myisam
@@ -26,7 +22,7 @@ subpartition by hash (a)
 (partition p0 VALUES LESS THAN (1) $data_directory $inx_directory
  (SUBPARTITION subpart00, SUBPARTITION subpart01));
 
---echo Checking if file exists before alter
+--echo # Checking if file exists before alter
 --file_exists $MYSQLTEST_VARDIR/master-data/test/t1.frm
 --file_exists $MYSQLTEST_VARDIR/master-data/test/t1.par
 --file_exists $MYSQLTEST_VARDIR/master-data/test/t1#P#p0#SP#subpart00.MYD
@@ -45,7 +41,7 @@ eval ALTER TABLE t1 REORGANIZE PARTITION
  partition p2 VALUES LESS THAN (2) $data_directory $inx_directory
  (SUBPARTITION subpart20, SUBPARTITION subpart21));
 
---echo Checking if file exists after alter
+--echo # Checking if file exists after alter
 --file_exists $MYSQLTEST_VARDIR/master-data/test/t1.frm
 --file_exists $MYSQLTEST_VARDIR/master-data/test/t1.par
 --file_exists $MYSQLTEST_VARDIR/master-data/test/t1#P#p1#SP#subpart10.MYD
@@ -98,18 +94,18 @@ set @@sql_mode=@org_mode;
 # Bug#32167: another privilege bypass with DATA/INDEX DIRECTORY
 #
 --replace_result $MYSQLTEST_VARDIR TEST_DIR
---error 1210
+--error ER_WRONG_ARGUMENTS
 eval CREATE TABLE t1(a INT)
 PARTITION BY KEY (a)
 (PARTITION p0 DATA DIRECTORY '$MYSQLTEST_VARDIR/master-data/test');
 --replace_result $MYSQLTEST_VARDIR TEST_DIR
---error 1210
+--error ER_WRONG_ARGUMENTS
 eval CREATE TABLE t1(a INT)
 PARTITION BY KEY (a)
 (PARTITION p0 INDEX DIRECTORY '$MYSQLTEST_VARDIR/master-data/test');
 
 --replace_result $MYSQLTEST_VARDIR TEST_DIR
---error 1210
+--error ER_WRONG_ARGUMENTS
 eval CREATE TABLE ts (id INT, purchased DATE)
 PARTITION BY RANGE(YEAR(purchased))
 SUBPARTITION BY HASH(TO_DAYS(purchased)) (
@@ -121,7 +117,7 @@ SUBPARTITION s0b
 ));
 
 --replace_result $MYSQLTEST_VARDIR TEST_DIR
---error 1210
+--error ER_WRONG_ARGUMENTS
 eval CREATE TABLE ts (id INT, purchased DATE)
 PARTITION BY RANGE(YEAR(purchased))
 SUBPARTITION BY HASH(TO_DAYS(purchased)) (
@@ -144,18 +140,68 @@ SUBPARTITION s0b
 DROP TABLE IF EXISTS `example`;
 --enable_warnings
 
---disable_abort_on_error
-CREATE TABLE `example` (
+--mkdir $MYSQLTEST_VARDIR/p0Data
+--mkdir $MYSQLTEST_VARDIR/p1Data
+--mkdir $MYSQLTEST_VARDIR/p2Data
+--mkdir $MYSQLTEST_VARDIR/p3Data
+--mkdir $MYSQLTEST_VARDIR/p0Index
+--mkdir $MYSQLTEST_VARDIR/p1Index
+--mkdir $MYSQLTEST_VARDIR/p2Index
+--mkdir $MYSQLTEST_VARDIR/p3Index
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
+eval 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`)
 ) ENGINE = MYISAM 
 PARTITION BY HASH(ID_EXAMPLE)(
-PARTITION p0 DATA DIRECTORY = '/build/5.1/data/partitiontest/p0Data',
-PARTITION p1 DATA DIRECTORY = '/build/5.1/data/partitiontest/p1Data',
-PARTITION p2 DATA DIRECTORY = '/build/5.1/data/partitiontest/p2Data',
-PARTITION p3 DATA DIRECTORY = '/build/5.1/data/partitiontest/p3Data'
+PARTITION p0 DATA DIRECTORY = '$MYSQLTEST_VARDIR/p0Data'
+INDEX DIRECTORY = '$MYSQLTEST_VARDIR/p0Index',
+PARTITION p1 DATA DIRECTORY = '$MYSQLTEST_VARDIR/p1Data'
+INDEX DIRECTORY = '$MYSQLTEST_VARDIR/p1Index',
+PARTITION p2 DATA DIRECTORY = '$MYSQLTEST_VARDIR/p2Data'
+INDEX DIRECTORY = '$MYSQLTEST_VARDIR/p2Index',
+PARTITION p3 DATA DIRECTORY = '$MYSQLTEST_VARDIR/p3Data'
+INDEX DIRECTORY = '$MYSQLTEST_VARDIR/p3Index'
 );
---enable_abort_on_error
+--echo # Checking that MyISAM .MYD and .MYI are in test db and data/idx dir
+--file_exists $MYSQLTEST_VARDIR/master-data/test/example#P#p0.MYI
+--file_exists $MYSQLTEST_VARDIR/master-data/test/example#P#p0.MYD
+--file_exists $MYSQLTEST_VARDIR/p0Data/example#P#p0.MYD
+--file_exists $MYSQLTEST_VARDIR/p0Index/example#P#p0.MYI
+--file_exists $MYSQLTEST_VARDIR/master-data/test/example#P#p1.MYI
+--file_exists $MYSQLTEST_VARDIR/master-data/test/example#P#p1.MYD
+--file_exists $MYSQLTEST_VARDIR/p1Data/example#P#p1.MYD
+--file_exists $MYSQLTEST_VARDIR/p1Index/example#P#p1.MYI
+--file_exists $MYSQLTEST_VARDIR/master-data/test/example#P#p2.MYI
+--file_exists $MYSQLTEST_VARDIR/master-data/test/example#P#p2.MYD
+--file_exists $MYSQLTEST_VARDIR/p2Data/example#P#p2.MYD
+--file_exists $MYSQLTEST_VARDIR/p2Index/example#P#p2.MYI
+--file_exists $MYSQLTEST_VARDIR/master-data/test/example#P#p3.MYI
+--file_exists $MYSQLTEST_VARDIR/master-data/test/example#P#p3.MYD
+--file_exists $MYSQLTEST_VARDIR/p3Data/example#P#p3.MYD
+--file_exists $MYSQLTEST_VARDIR/p3Index/example#P#p3.MYI
+DROP TABLE example;
+--rmdir $MYSQLTEST_VARDIR/p0Data
+--rmdir $MYSQLTEST_VARDIR/p1Data
+--rmdir $MYSQLTEST_VARDIR/p2Data
+--rmdir $MYSQLTEST_VARDIR/p3Data
+--rmdir $MYSQLTEST_VARDIR/p0Index
+--rmdir $MYSQLTEST_VARDIR/p1Index
+--rmdir $MYSQLTEST_VARDIR/p2Index
+--rmdir $MYSQLTEST_VARDIR/p3Index
 
+--error ER_CANT_CREATE_TABLE,1
+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`)
+) ENGINE = MYISAM 
+PARTITION BY HASH(ID_EXAMPLE)(
+PARTITION p0 DATA DIRECTORY = '/not/existent/p0Data',
+PARTITION p1 DATA DIRECTORY = '/not/existent/p1Data',
+PARTITION p2 DATA DIRECTORY = '/not/existent/p2Data',
+PARTITION p3 DATA DIRECTORY = '/not/existent/p3Data'
+);
diff -Nrup a/mysql-test/t/partition_symlink.test b/mysql-test/t/partition_symlink.test
--- a/mysql-test/t/partition_symlink.test	2008-03-14 19:13:50 +01:00
+++ b/mysql-test/t/partition_symlink.test	2008-03-17 16:11:23 +01:00
@@ -27,9 +27,6 @@ DROP DATABASE IF EXISTS mysqltest2;
 # directory or file that the mysqld-process can use, via DATA/INDEX DIR)
 # this is the security flaw that was used in bug#32091 and bug#32111
 
-#--exec mkdir $MYSQLTEST_VARDIR/tmp/test || true
-#--exec mkdir $MYSQLTEST_VARDIR/tmp/mysqltest2 || true
-
 -- echo # Creating two non colliding tables mysqltest2.t1 and test.t1
 -- echo # test.t1 have partitions in mysqltest2-directory!
 -- echo # user root:
@@ -125,22 +122,18 @@ connection default;
   DROP USER mysqltest_1@localhost;
   disconnect con1;
 
-#--exec rmdir $MYSQLTEST_VARDIR/tmp/test || true
-#--exec rmdir $MYSQLTEST_VARDIR/tmp/mysqltest2 || true
-
 #
 # Bug #24633 SQL MODE "NO_DIR_IN_CREATE" does not work with partitioned tables 
 #
 
-disable_query_log;
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR 
 eval create table t2 (i int )
 partition by range (i)
 (
     partition p01 values less than (1000)
-    data directory="$MYSQLTEST_VARDIR/master-data/test/"
-    index directory="$MYSQLTEST_VARDIR/master-data/test/"
+    data directory="$MYSQLTEST_VARDIR/tmp"
+    index directory="$MYSQLTEST_VARDIR/tmp"
 );
-enable_query_log;
 
 set @org_mode=@@sql_mode;
 set @@sql_mode='NO_DIR_IN_CREATE';
@@ -153,6 +146,7 @@ partition by range (i)
     index directory='/not/existing'
 );
 
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR 
 show create table t2;
 DROP TABLE t1, t2;
 set @@sql_mode=@org_mode;
diff -Nrup a/mysql-test/t/symlink.test b/mysql-test/t/symlink.test
--- a/mysql-test/t/symlink.test	2008-03-14 19:13:50 +01:00
+++ b/mysql-test/t/symlink.test	2008-03-17 16:11:24 +01:00
@@ -38,9 +38,8 @@ drop table t2;
 # We use t9 here to not crash with tables generated by the backup test
 # 
 
-disable_query_log;
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 eval create table t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam data directory="$MYSQLTEST_VARDIR/tmp" index directory="$MYSQLTEST_VARDIR/run";
-enable_query_log;
 
 insert into t9 select * from t1;
 check table t9;
@@ -66,7 +65,6 @@ drop table t1;
 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 SHOW CREATE TABLE t9;
 
-disable_query_log;
 --error 1103,1103
 create table t1 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam data directory="tmp";
 
@@ -81,13 +79,14 @@ create table mysqltest.t9 (a int not nul
 create table mysqltest.t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam index directory="not-hard-path";
 
 # Should fail becasue the file t9.MYI already exist in 'run'
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 --error 1,1,1105
 eval create table mysqltest.t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam index directory="$MYSQLTEST_VARDIR/run";
 
 # Should fail becasue the file t9.MYD already exist in 'tmp'
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 --error 1,1
 eval create table mysqltest.t9 (a int not null auto_increment, b char(16) not null, primary key (a)) engine=myisam data directory="$MYSQLTEST_VARDIR/tmp";
-enable_query_log;
 
 # Check moving table t9 from default database to mysqltest;
 # In this case the symlinks should be removed.
@@ -103,20 +102,17 @@ drop database mysqltest;
 #
 
 create table t1 (a int not null) engine=myisam;
-disable_query_log;
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 eval alter table t1 data directory="$MYSQLTEST_VARDIR/tmp";
-enable_query_log;
 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 show create table t1;
 alter table t1 add b int;
-disable_query_log;
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 eval alter table t1 data directory="$MYSQLTEST_VARDIR/log";
-enable_query_log;
 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 show create table t1;
-disable_query_log;
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 eval alter table t1 index directory="$MYSQLTEST_VARDIR/log";
-enable_query_log;
 show create table t1;
 drop table t1;
 
@@ -125,8 +121,9 @@ drop table t1;
 #
 --write_file $MYSQLTEST_VARDIR/tmp/t1.MYI
 EOF
---replace_result $MYSQLTEST_VARDIR TEST_DIR
---error 1
+
+--replace_result $MYSQLTEST_VARDIR TEST_DIR $MYSQLTEST_VARDIR TEST_DIR
+--error 1,1
 eval CREATE TABLE t1(a INT)
 DATA DIRECTORY='$MYSQLTEST_VARDIR/tmp'
 INDEX DIRECTORY='$MYSQLTEST_VARDIR/tmp';
@@ -147,18 +144,16 @@ connect (session1,localhost,root,,);
 connect (session2,localhost,root,,);
 
 connection session1;
-disable_query_log;
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 eval create temporary table t1 (a int) engine=myisam data directory="$MYSQLTEST_VARDIR/log" select 9 a;
-enable_query_log;
 # If running test suite with a non standard tmp dir, the "show create table"
 # will print "DATA_DIRECTORY=". Use replace_result to mask it out
 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 show create table t1;
 
 connection session2;
-disable_query_log;
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
 eval create temporary table t1 (a int) engine=myisam data directory="$MYSQLTEST_VARDIR/log" select 99 a;
-enable_query_log;
 # If running test suite with a non standard tmp dir, the "show create table"
 # will print "DATA_DIRECTORY=". Use replace_result to mask it out
 --replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
diff -Nrup a/sql/partition_info.cc b/sql/partition_info.cc
--- a/sql/partition_info.cc	2008-03-14 18:50:33 +01:00
+++ b/sql/partition_info.cc	2008-03-17 16:11:24 +01:00
@@ -1312,11 +1312,11 @@ bool check_partition_dirs(partition_info
   return 0;
 
 dd_err:
-  my_error(ER_WRONG_ARGUMENTS,MYF(0),"DATA DIRECORY");
+  my_error(ER_WRONG_ARGUMENTS,MYF(0),"DATA DIRECTORY");
   return 1;
 
 id_err:
-  my_error(ER_WRONG_ARGUMENTS,MYF(0),"INDEX DIRECORY");
+  my_error(ER_WRONG_ARGUMENTS,MYF(0),"INDEX DIRECTORY");
   return 1;
 }
 
diff -Nrup a/sql/sql_parse.cc b/sql/sql_parse.cc
--- a/sql/sql_parse.cc	2008-03-14 19:13:51 +01:00
+++ b/sql/sql_parse.cc	2008-03-17 16:11:24 +01:00
@@ -2354,13 +2354,13 @@ mysql_execute_command(THD *thd)
 
     if (test_if_data_home_dir(lex->create_info.data_file_name))
     {
-      my_error(ER_WRONG_ARGUMENTS,MYF(0),"DATA DIRECORY");
+      my_error(ER_WRONG_ARGUMENTS,MYF(0),"DATA DIRECTORY");
       res= -1;
       break;
     }
     if (test_if_data_home_dir(lex->create_info.index_file_name))
     {
-      my_error(ER_WRONG_ARGUMENTS,MYF(0),"INDEX DIRECORY");
+      my_error(ER_WRONG_ARGUMENTS,MYF(0),"INDEX DIRECTORY");
       res= -1;
       break;
     }
Thread
bk commit into 5.1 tree (mattiasj:1.2566) BUG#35305mattiasj17 Mar