~drizzle-trunk/drizzle/development

1 by brian
clean slate
1
# Testcase for BUG#4551
2
# The bug was that when the table was TEMPORARY, it was not deleted if
3
# the CREATE SELECT failed (the code intended too, but it actually
4
# didn't). And as the CREATE TEMPORARY TABLE was not written to the
5
# binlog if it was a transactional table, it resulted in an
6
# inconsistency between binlog and the internal list of temp tables.
7
8
drop table if exists t1, t2;
722.2.29 by Monty Taylor
Fixed create_select_tmp test.
9
drop table if exists t1;
10
CREATE TABLE t1 (
11
  a int DEFAULT 0 NOT NULL
12
) ENGINE = InnoDB;
1 by brian
clean slate
13
INSERT INTO t1 VALUES (1),(2),(1);
14
--error ER_DUP_ENTRY
15
CREATE TABLE t2 ( PRIMARY KEY (a) ) ENGINE=INNODB SELECT a FROM t1;
2140.1.2 by Brian Aker
Merge in decomplication of our error system when reading through the table
16
--error ER_TABLE_UNKNOWN
1 by brian
clean slate
17
select * from t2;
18
--error ER_DUP_ENTRY
19
CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) ENGINE=INNODB SELECT a FROM t1;
2140.1.2 by Brian Aker
Merge in decomplication of our error system when reading through the table
20
--error ER_TABLE_UNKNOWN
21
select * from t2;
22
--error ER_DUP_ENTRY
23
CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) ENGINE=MYISAM SELECT a FROM t1;
24
--error ER_TABLE_UNKNOWN
25
select * from t2;
26
--error ER_DUP_ENTRY
27
CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) ENGINE=MYISAM SELECT a FROM t1;
28
--error ER_TABLE_UNKNOWN
1 by brian
clean slate
29
select * from t2;
30
drop table t1;
31
32
# End of 4.1 tests