Commit 129f7898 authored by unknown's avatar unknown

Merge bk-internal.mysql.com:/home/bk/mysql-5.1-engines

into  stella.local:/home2/mydev/mysql-5.1-bug30491

parents 90914282 dc362dae
DROP TABLE IF EXISTS t1, t2, t3, t4, t5;
CREATE TABLE t1 (c1 varchar(100)) ENGINE=MyISAM;
CREATE TABLE t2 (c1 varchar(100)) ENGINE=MyISAM;
CREATE TABLE t3 (c1 varchar(100)) ENGINE=InnoDB;
INSERT INTO t1 VALUES ('Ann'), ('Alice');
INSERT INTO t2 VALUES ('Bob'), ('Brian');
INSERT INTO t3 VALUES ('Chris'), ('Charlie');
CREATE TABLE t4 (c1 varchar(100)) ENGINE=MRG_MYISAM UNION=(t1,t2)
INSERT_METHOD=LAST;
CREATE TABLE t5 (c1 varchar(100)) ENGINE=MRG_MYISAM UNION=(t1,t3)
INSERT_METHOD=LAST;
SELECT * FROM t5;
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
SELECT * FROM t4;
c1
Ann
Alice
Bob
Brian
ALTER TABLE t2 ENGINE=InnoDB;
SELECT * FROM t4;
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
DELETE FROM t2 LIMIT 1;
SELECT * FROM t4;
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
INSERT INTO t4 VALUES ('Beware');
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
SELECT * FROM t4;
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
SELECT * FROM t2;
c1
Brian
SELECT * FROM t1;
c1
Ann
Alice
DROP TABLE t1, t2, t3, t4, t5;
# t/merge_innodb.test
#
# Tests with MERGE tables over InnoDB tables
#
--source include/have_innodb.inc
--disable_warnings
DROP TABLE IF EXISTS t1, t2, t3, t4, t5;
--enable_warnings
#
# Bug#30491 - MERGE doesn't report error when one table is Innodb
#
CREATE TABLE t1 (c1 varchar(100)) ENGINE=MyISAM;
CREATE TABLE t2 (c1 varchar(100)) ENGINE=MyISAM;
CREATE TABLE t3 (c1 varchar(100)) ENGINE=InnoDB;
INSERT INTO t1 VALUES ('Ann'), ('Alice');
INSERT INTO t2 VALUES ('Bob'), ('Brian');
INSERT INTO t3 VALUES ('Chris'), ('Charlie');
CREATE TABLE t4 (c1 varchar(100)) ENGINE=MRG_MYISAM UNION=(t1,t2)
INSERT_METHOD=LAST;
CREATE TABLE t5 (c1 varchar(100)) ENGINE=MRG_MYISAM UNION=(t1,t3)
INSERT_METHOD=LAST;
--error ER_WRONG_MRG_TABLE
SELECT * FROM t5;
SELECT * FROM t4;
ALTER TABLE t2 ENGINE=InnoDB;
--error ER_WRONG_MRG_TABLE
SELECT * FROM t4;
DELETE FROM t2 LIMIT 1;
--error ER_WRONG_MRG_TABLE
SELECT * FROM t4;
--error ER_WRONG_MRG_TABLE
INSERT INTO t4 VALUES ('Beware');
--error ER_WRONG_MRG_TABLE
SELECT * FROM t4;
SELECT * FROM t2;
SELECT * FROM t1;
DROP TABLE t1, t2, t3, t4, t5;
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment