diff options
author | Sergei Golubchik <sergii@pisem.net> | 2013-09-18 09:09:27 +0200 |
---|---|---|
committer | Sergei Golubchik <sergii@pisem.net> | 2013-09-18 09:09:27 +0200 |
commit | a5d7e701196052f4a6605f465953098eba37a7aa (patch) | |
tree | 9c91881a3963fe49277e12167a9e6895f2c368f2 /mysql-test | |
parent | 68df7a0137f15ffe57e4dec0adeeb3989930acf2 (diff) | |
download | mariadb-git-a5d7e701196052f4a6605f465953098eba37a7aa.tar.gz |
MDEV-5029 Crash in MariaDB 5.5.33 with .frm from older MariaDB release
don't set TABLE_SHARE::keys before TABLE_SHARE::key_info is set,
otherwise an error might leave only the first property set and it will
confuse TABLE_SHARE::destroy()
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/r/bad_frm_crash_5029.result | 2 | ||||
-rw-r--r-- | mysql-test/std_data/mdev5029.frm | bin | 0 -> 8602 bytes | |||
-rw-r--r-- | mysql-test/t/bad_frm_crash_5029.test | 11 |
3 files changed, 13 insertions, 0 deletions
diff --git a/mysql-test/r/bad_frm_crash_5029.result b/mysql-test/r/bad_frm_crash_5029.result new file mode 100644 index 00000000000..7a829c8f6ba --- /dev/null +++ b/mysql-test/r/bad_frm_crash_5029.result @@ -0,0 +1,2 @@ +show create table t1; +ERROR 42000: Unknown storage engine 'InnoDB' diff --git a/mysql-test/std_data/mdev5029.frm b/mysql-test/std_data/mdev5029.frm Binary files differnew file mode 100644 index 00000000000..de169a20953 --- /dev/null +++ b/mysql-test/std_data/mdev5029.frm diff --git a/mysql-test/t/bad_frm_crash_5029.test b/mysql-test/t/bad_frm_crash_5029.test new file mode 100644 index 00000000000..b15c37fbc6d --- /dev/null +++ b/mysql-test/t/bad_frm_crash_5029.test @@ -0,0 +1,11 @@ +# +# MDEV-5029 Crash in MariaDB 5.5.33 with .frm from older MariaDB release +# +# a.k.a. fail to open an frm with indexes: + +let $datadir=`select @@datadir`; +copy_file std_data/mdev5029.frm $datadir/test/t1.frm; +--error ER_UNKNOWN_STORAGE_ENGINE +show create table t1; +remove_file $datadir/test/t1.frm; + |