diff options
author | Anurag Shekhar <anurag.shekhar@sun.com> | 2009-04-17 11:21:51 +0530 |
---|---|---|
committer | Anurag Shekhar <anurag.shekhar@sun.com> | 2009-04-17 11:21:51 +0530 |
commit | 0501328a7deaa77b3b889ea75459ea6d818181b5 (patch) | |
tree | fb4254969f7857b83c4bbe473b44f1c80cd8c8eb /mysql-test/t/merge.test | |
parent | c90a869c6b5a2ec80e6e917a862872b0d3a40a54 (diff) | |
download | mariadb-git-0501328a7deaa77b3b889ea75459ea6d818181b5.tar.gz |
Bug#44040 MySQL allows creating a MERGE table upon VIEWs but crashes when
using it.
The crash was due to a null pointer present for select_lex while
processing the view.
Adding a check while opening the view to see if its a child of a
merge table fixed this problem.
mysql-test/r/merge.result:
Updated result for the new test case.
mysql-test/t/merge.test:
Added test case based on the bug description.
sql/sql_base.cc:
Added a check to check if the view being opened is a child table of a
merge table and return error if it is.
Diffstat (limited to 'mysql-test/t/merge.test')
-rw-r--r-- | mysql-test/t/merge.test | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/mysql-test/t/merge.test b/mysql-test/t/merge.test index f12187ea143..5315c91daa6 100644 --- a/mysql-test/t/merge.test +++ b/mysql-test/t/merge.test @@ -1514,4 +1514,25 @@ insert into m1 (col1) values (1); insert into m1 (col1) values (1); drop table m1, t1; + +# +#Bug #44040 MySQL allows creating a MERGE table upon VIEWs but crashes +#when using it +# + +CREATE TABLE t1 ( + col1 INT(10) +) ENGINE=MyISAM DEFAULT CHARSET=latin1; + +CREATE VIEW v1 as SELECT * FROM t1; +CREATE TABLE m1 ( + col1 INT(10) +)ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(v1); + +--echo #Select should detect that the child table is a view and fail. +--error ER_WRONG_MRG_TABLE +SELECT * FROM m1; + +DROP VIEW v1; +DROP TABLE m1, t1; --echo End of 5.1 tests |