|
|
|
@ -18,3 +18,42 @@ create table nu (a int); |
|
|
|
drop table nu; |
|
|
|
|
|
|
|
# End of 4.1 tests |
|
|
|
|
|
|
|
# |
|
|
|
# Bug #20789: Merge Subtable Rename Causes Crash |
|
|
|
# |
|
|
|
CREATE TABLE `t1` ( |
|
|
|
`TIM` datetime NOT NULL, |
|
|
|
`VAL` double default NULL |
|
|
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1; |
|
|
|
CREATE TABLE `t2` ( |
|
|
|
`TIM` datetime NOT NULL, |
|
|
|
`VAL` double default NULL |
|
|
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1; |
|
|
|
CREATE TABLE `mt` ( |
|
|
|
`TIM` datetime NOT NULL, |
|
|
|
`VAL` double default NULL |
|
|
|
) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 INSERT_METHOD=LAST |
|
|
|
UNION=(`t1`,`t2`); |
|
|
|
|
|
|
|
# insert into the merge table and thus open it. |
|
|
|
INSERT INTO mt VALUES ('2006-01-01',0); |
|
|
|
|
|
|
|
# Alter one of the tables that are part of the merge table |
|
|
|
ALTER TABLE `t2` RENAME TO `t`; |
|
|
|
|
|
|
|
# Insert into the merge table that has just been altered |
|
|
|
--error 1015 |
|
|
|
INSERT INTO mt VALUES ('2006-01-01',0); |
|
|
|
--error 1015 |
|
|
|
select * from mt; |
|
|
|
|
|
|
|
FLUSH TABLES; |
|
|
|
--error 1017 |
|
|
|
select * from mt; |
|
|
|
|
|
|
|
# Alter one of the tables that are part of the merge table |
|
|
|
ALTER TABLE `t` RENAME TO `t2`; |
|
|
|
INSERT INTO mt VALUES ('2006-01-01',0); |
|
|
|
select * from mt; |
|
|
|
|