#At bzr+ssh://bk-internal.mysql.com/bzrroot/server/mysql-6.0-falcon/
2707 John H. Embretsen 2008-06-17
Bug#33723 - ALTER TABLE into non-existing Falcon tablespace blocks further ALTERs
Expanded test falcon_bug_34617 to include further *valid* ALTER TABLE statement
after invalid ALTER TABLE into non-existing tablespace.
Also added script header and some comments.
Added reference to additional bugs covered by this test, i.e.
Bug#33397 - ALTER TABLE into non-existing Falcon tablespace causes vague error.
and the duplicate Bug#36927.
modified:
mysql-test/suite/falcon/r/falcon_bug_34617.result
mysql-test/suite/falcon/t/falcon_bug_34617.test
per-file comments:
mysql-test/suite/falcon/r/falcon_bug_34617.result
Result file updated with latest test additions (ALTER TABLE into valid tablespace).
mysql-test/suite/falcon/t/falcon_bug_34617.test
Added ALTER TABLE into valid tablespace after expected error, and some comments.
=== modified file 'mysql-test/suite/falcon/r/falcon_bug_34617.result'
--- a/mysql-test/suite/falcon/r/falcon_bug_34617.result 2008-04-23 08:21:28 +0000
+++ b/mysql-test/suite/falcon/r/falcon_bug_34617.result 2008-06-17 13:04:04 +0000
@@ -5,4 +5,7 @@
ERROR HY000: Tablespace 'nosuchtablespace' doesn't exist
ALTER TABLE t1 TABLESPACE nosuchtablespace;
ERROR HY000: Tablespace 'nosuchtablespace' doesn't exist
+CREATE TABLESPACE tmptablespace add datafile 'tmptablespace.fts' Engine=Falcon;
+ALTER TABLE t1 TABLESPACE tmptablespace;
DROP TABLE t1;
+DROP TABLESPACE tmptablespace Engine=Falcon;
=== modified file 'mysql-test/suite/falcon/t/falcon_bug_34617.test'
--- a/mysql-test/suite/falcon/t/falcon_bug_34617.test 2008-04-23 08:21:28 +0000
+++ b/mysql-test/suite/falcon/t/falcon_bug_34617.test 2008-06-17 13:04:04 +0000
@@ -1,16 +1,42 @@
+########### suite/falcon/t/falcon_bug_34617.test #######################
+# #
+# Testing that referencing a non-existent tablespace in certain DDL #
+# operations do not result in Falcon crashes or wrong error messages. #
+# This test also verifies that valid operations succeed after #
+# executing statements referencing non-existent tablespaces. #
+# #
+########################################################################
+
--source include/have_falcon.inc
#
+# BUG#34048 - Falcon: after error with tablespace, I can't create table
+#
+--error ER_NO_SUCH_TABLESPACE
+CREATE TABLE t1(a INT) ENGINE=Falcon TABLESPACE nosuchtablespace;
+CREATE TABLE t1(a INT) ENGINE=Falcon;
+
+#
# BUG#33723 - ALTER TABLE into non-existing Falcon tablespace blocks
# further ALTERs
-# BUG#34048 - Falcon: after error with tablespace, I can't create table
+# BUG#33397 - ALTER TABLE into non-existing Falcon tablespace causes vague
+# error
# BUG#34617 - Falcon assertion in StorageHandler::addTable, line 622
+# BUG#36927 - Falcon: crash altering table's tablespace
#
---error ER_NO_SUCH_TABLESPACE
-CREATE TABLE t1(a INT) ENGINE=Falcon TABLESPACE nosuchtablespace;
-CREATE TABLE t1(a INT) ENGINE=Falcon;
---error ER_NO_SUCH_TABLESPACE
-ALTER TABLE t1 TABLESPACE nosuchtablespace;
---error ER_NO_SUCH_TABLESPACE
-ALTER TABLE t1 TABLESPACE nosuchtablespace;
+
+## Going once...
+--error ER_NO_SUCH_TABLESPACE
+ALTER TABLE t1 TABLESPACE nosuchtablespace;
+
+## Going twice...
+--error ER_NO_SUCH_TABLESPACE
+ALTER TABLE t1 TABLESPACE nosuchtablespace;
+
+## Subsequent valid ALTER TABLE statements should succeed
+CREATE TABLESPACE tmptablespace add datafile 'tmptablespace.fts' Engine=Falcon;
+ALTER TABLE t1 TABLESPACE tmptablespace;
+
+## Cleanup
DROP TABLE t1;
+DROP TABLESPACE tmptablespace Engine=Falcon;
| Thread |
|---|
| • commit into mysql-6.0-falcon branch (john.embretsen:2707) Bug#33397,Bug#33723, Bug#36927 | John H. Embretsen | 17 Jun |