List:Commits« Previous MessageNext Message »
From:ingo Date:August 3 2006 6:13am
Subject:bk commit into 5.1 tree (ingo:1.2278) BUG#18775
View as plain text  
Below is the list of changes that have just been committed into a local
5.1 repository of istruewing. When istruewing 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, 2006-08-03 08:12:56+02:00, ingo@stripped +4 -0
  Bug#18775 - Temporary table from alter table visible to other threads
  New test cases. Names with umlauts don't compare well on Windows.

  mysql-test/r/alter_table.result@stripped, 2006-08-03 08:12:53+02:00, ingo@stripped +30 -25
    Bug#18775 - Temporary table from alter table visible to other threads
    New test results

  mysql-test/r/backup.result@stripped, 2006-08-03 08:12:53+02:00, ingo@stripped +10 -10
    Bug#18775 - Temporary table from alter table visible to other threads
    New test results

  mysql-test/t/alter_table.test@stripped, 2006-08-03 08:12:53+02:00, ingo@stripped +15 -24
    Bug#18775 - Temporary table from alter table visible to other threads
    New test case. Names with umlauts don't compare well on Windows.

  mysql-test/t/backup.test@stripped, 2006-08-03 08:12:53+02:00, ingo@stripped +8 -8
    Bug#18775 - Temporary table from alter table visible to other threads
    New test case. Names with umlauts don't compare well on Windows.

# This is a BitKeeper patch.  What follows are the unified diffs for the
# set of deltas contained in the patch.  The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User:	ingo
# Host:	chilla.local
# Root:	/home/mydev/mysql-5.1-bug18775

--- 1.65/mysql-test/r/alter_table.result	2006-08-03 08:13:02 +02:00
+++ 1.66/mysql-test/r/alter_table.result	2006-08-03 08:13:02 +02:00
@@ -657,43 +657,45 @@ SELECT * FROM t1;
 v	b
 abc	5
 DROP TABLE t1;
-DROP DATABASE IF EXISTS mysqltest;
-CREATE DATABASE mysqltest;
-use mysqltest;
-ERROR 42S01: Table 't1_blЭten' already exists
-ERROR 42S01: Table 'tt1_blЭten' already exists
+DROP TABLE IF EXISTS `t+1`, `t+2`;
+CREATE TABLE `t+1` (c1 INT);
+ALTER TABLE  `t+1` RENAME `t+2`;
+CREATE TABLE `t+1` (c1 INT);
+ALTER TABLE  `t+1` RENAME `t+2`;
+ERROR 42S01: Table 't+2' already exists
+DROP TABLE   `t+1`, `t+2`;
+CREATE TEMPORARY TABLE `tt+1` (c1 INT);
+ALTER TABLE  `tt+1` RENAME `tt+2`;
+CREATE TEMPORARY TABLE `tt+1` (c1 INT);
+ALTER TABLE  `tt+1` RENAME `tt+2`;
+ERROR 42S01: Table 'tt+2' already exists
+SHOW CREATE TABLE `tt+1`;
 Table	Create Table
+tt+1	CREATE TEMPORARY TABLE `tt+1` (
   `c1` int(11) DEFAULT NULL
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
+SHOW CREATE TABLE `tt+2`;
+Table	Create Table
+tt+2	CREATE TEMPORARY TABLE `tt+2` (
+  `c1` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE   `tt+1`, `tt+2`;
 CREATE TABLE `#sql1` (c1 INT);
 CREATE TABLE `@0023sql2` (c1 INT);
 SHOW TABLES;
-Tables_in_mysqltest
+Tables_in_test
 #sql1
 @0023sql2
 RENAME TABLE `#sql1`     TO `@0023sql1`;
 RENAME TABLE `@0023sql2` TO `#sql2`;
 SHOW TABLES;
-Tables_in_mysqltest
+Tables_in_test
 #sql2
 @0023sql1
 ALTER TABLE `@0023sql1`  RENAME `#sql-1`;
 ALTER TABLE `#sql2`      RENAME `@0023sql-2`;
 SHOW TABLES;
-Tables_in_mysqltest
+Tables_in_test
 #sql-1
 @0023sql-2
 INSERT INTO `#sql-1`     VALUES (1);
@@ -702,18 +704,21 @@ DROP TABLE `#sql-1`, `@0023sql-2`;
 CREATE TEMPORARY TABLE `#sql1` (c1 INT);
 CREATE TEMPORARY TABLE `@0023sql2` (c1 INT);
 SHOW TABLES;
-Tables_in_mysqltest
+Tables_in_test
 ALTER TABLE `#sql1`      RENAME `@0023sql1`;
 ALTER TABLE `@0023sql2`  RENAME `#sql2`;
 SHOW TABLES;
-Tables_in_mysqltest
+Tables_in_test
 INSERT INTO `#sql2`      VALUES (1);
 INSERT INTO `@0023sql1`  VALUES (2);
+SHOW CREATE TABLE `#sql2`;
+Table	Create Table
+#sql2	CREATE TEMPORARY TABLE `#sql2` (
+  `c1` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
 SHOW CREATE TABLE `@0023sql1`;
 Table	Create Table
 @0023sql1	CREATE TEMPORARY TABLE `@0023sql1` (
   `c1` int(11) DEFAULT NULL
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1
 DROP TABLE `#sql2`, `@0023sql1`;
-use test;
-DROP DATABASE mysqltest;

--- 1.50/mysql-test/t/alter_table.test	2006-08-03 08:13:02 +02:00
+++ 1.51/mysql-test/t/alter_table.test	2006-08-03 08:13:02 +02:00
@@ -488,32 +488,26 @@ DROP TABLE t1;
 #
 # Bug#18775 - Temporary table from alter table visible to other threads
 #
-# Use a special database to avoid name clashes with user tables.
+# Check if special characters work and duplicates are detected.
 --disable_warnings
-DROP DATABASE IF EXISTS mysqltest;
+DROP TABLE IF EXISTS `t+1`, `t+2`;
 --enable_warnings
-CREATE DATABASE mysqltest;
-use mysqltest;
-#
-# Check if non-ASCII alphabetic characters work and duplicates are detected.
---disable_warnings
---enable_warnings
+CREATE TABLE `t+1` (c1 INT);
+ALTER TABLE  `t+1` RENAME `t+2`;
+CREATE TABLE `t+1` (c1 INT);
 --error ER_TABLE_EXISTS_ERROR
+ALTER TABLE  `t+1` RENAME `t+2`;
+DROP TABLE   `t+1`, `t+2`;
 #
 # Same for temporary tables though these names do not become file names.
+CREATE TEMPORARY TABLE `tt+1` (c1 INT);
+ALTER TABLE  `tt+1` RENAME `tt+2`;
+CREATE TEMPORARY TABLE `tt+1` (c1 INT);
 --error ER_TABLE_EXISTS_ERROR
+ALTER TABLE  `tt+1` RENAME `tt+2`;
+SHOW CREATE TABLE `tt+1`;
+SHOW CREATE TABLE `tt+2`;
+DROP TABLE   `tt+1`, `tt+2`;
 #
 # Check if special characters as in tmp_file_prefix work.
 CREATE TABLE `#sql1` (c1 INT);
@@ -538,10 +532,7 @@ ALTER TABLE `@0023sql2`  RENAME `#sql2`;
 SHOW TABLES;
 INSERT INTO `#sql2`      VALUES (1);
 INSERT INTO `@0023sql1`  VALUES (2);
+SHOW CREATE TABLE `#sql2`;
 SHOW CREATE TABLE `@0023sql1`;
 DROP TABLE `#sql2`, `@0023sql1`;
-#
-# Cleanup
-use test;
-DROP DATABASE mysqltest;
 

--- 1.18/mysql-test/r/backup.result	2006-08-03 08:13:02 +02:00
+++ 1.19/mysql-test/r/backup.result	2006-08-03 08:13:02 +02:00
@@ -101,23 +101,23 @@ test.t5	backup	status	OK
 Warnings:
 Warning	1541	The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead.
 drop table t5;
+DROP TABLE IF EXISTS `t+1`;
+CREATE  TABLE `t+1` (c1 INT);
+INSERT  INTO  `t+1` VALUES (1), (2), (3);
+BACKUP  TABLE `t+1` TO '../tmp';
 Table	Op	Msg_type	Msg_text
+test.t+1	backup	status	OK
 Warnings:
 Warning	1541	The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead.
+DROP    TABLE `t+1`;
+RESTORE TABLE `t+1` FROM '../tmp';
 Table	Op	Msg_type	Msg_text
+test.t+1	restore	status	OK
 Warnings:
 Warning	1541	The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 5.2. Please use MySQL Administrator (mysqldump, mysql) instead.
+SELECT * FROM `t+1`;
 c1
 1
 2
 3
+DROP    TABLE `t+1`;

--- 1.21/mysql-test/t/backup.test	2006-08-03 08:13:02 +02:00
+++ 1.22/mysql-test/t/backup.test	2006-08-03 08:13:02 +02:00
@@ -65,15 +65,15 @@ drop table t5;
 #
 # Backup did not encode table names.
 --disable_warnings
+DROP TABLE IF EXISTS `t+1`;
 --enable_warnings
+CREATE  TABLE `t+1` (c1 INT);
+INSERT  INTO  `t+1` VALUES (1), (2), (3);
+BACKUP  TABLE `t+1` TO '../tmp';
+DROP    TABLE `t+1`;
 #
 # Same for restore.
+RESTORE TABLE `t+1` FROM '../tmp';
+SELECT * FROM `t+1`;
+DROP    TABLE `t+1`;
 
Thread
bk commit into 5.1 tree (ingo:1.2278) BUG#18775ingo3 Aug