diff options
author | unknown <istruewing@chilla.local> | 2007-03-06 12:35:58 +0100 |
---|---|---|
committer | unknown <istruewing@chilla.local> | 2007-03-06 12:35:58 +0100 |
commit | 1d6584e61cce7b2a9e2fd0d85becae66c6557bb4 (patch) | |
tree | b5e7fd77af400ddf6416bcffa2fe76bf67bb8ceb | |
parent | 8bf49833318770d5e9a559b8cdc66f9cc02a5f55 (diff) | |
parent | 2f863451b5c5fe848d26f5f87ae27f13415805b3 (diff) | |
download | mariadb-git-1d6584e61cce7b2a9e2fd0d85becae66c6557bb4.tar.gz |
Merge chilla.local:/home/mydev/mysql-5.0-bug26464
into chilla.local:/home/mydev/mysql-5.1-bug26464
mysql-test/r/merge.result:
Auto merged
mysql-test/t/merge.test:
Auto merged
storage/myisammrg/ha_myisammrg.h:
Bug#26464 - insert delayed + update + merge = corruption
Manual merge from 5.0
-rw-r--r-- | mysql-test/r/merge.result | 5 | ||||
-rw-r--r-- | mysql-test/t/merge.test | 9 | ||||
-rw-r--r-- | storage/myisammrg/ha_myisammrg.h | 4 |
3 files changed, 16 insertions, 2 deletions
diff --git a/mysql-test/r/merge.result b/mysql-test/r/merge.result index c654392f6e1..9dc2db39e9f 100644 --- a/mysql-test/r/merge.result +++ b/mysql-test/r/merge.result @@ -806,6 +806,11 @@ CREATE TABLE tm1(a SMALLINT, b SMALLINT, KEY(a)) ENGINE=MERGE UNION=(t1); SELECT * FROM tm1; ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist DROP TABLE t1, tm1; +CREATE TABLE t1(c1 INT) ENGINE=MyISAM; +CREATE TABLE t2(c1 INT) ENGINE=MERGE UNION=(t1); +INSERT DELAYED INTO t2 VALUES(1); +ERROR HY000: Table storage engine for 't2' doesn't have this option +DROP TABLE t1, t2; create table t1 (b bit(1)); create table t2 (b bit(1)); create table tm (b bit(1)) engine = merge union = (t1,t2); diff --git a/mysql-test/t/merge.test b/mysql-test/t/merge.test index d3639b07bdb..1fce643a5e3 100644 --- a/mysql-test/t/merge.test +++ b/mysql-test/t/merge.test @@ -434,6 +434,15 @@ CREATE TABLE tm1(a SMALLINT, b SMALLINT, KEY(a)) ENGINE=MERGE UNION=(t1); SELECT * FROM tm1; DROP TABLE t1, tm1; +# +# Bug#26464 - insert delayed + update + merge = corruption +# +CREATE TABLE t1(c1 INT) ENGINE=MyISAM; +CREATE TABLE t2(c1 INT) ENGINE=MERGE UNION=(t1); +--error 1031 +INSERT DELAYED INTO t2 VALUES(1); +DROP TABLE t1, t2; + # End of 4.1 tests # diff --git a/storage/myisammrg/ha_myisammrg.h b/storage/myisammrg/ha_myisammrg.h index ffa55673ad1..04379f6cf70 100644 --- a/storage/myisammrg/ha_myisammrg.h +++ b/storage/myisammrg/ha_myisammrg.h @@ -36,8 +36,8 @@ class ha_myisammrg: public handler { return (HA_REC_NOT_IN_SEQ | HA_AUTO_PART_KEY | HA_NO_TRANSACTIONS | HA_NULL_IN_KEY | HA_CAN_INDEX_BLOBS | HA_FILE_BASED | - HA_CAN_INSERT_DELAYED | HA_ANY_INDEX_MAY_BE_UNIQUE | - HA_CAN_BIT_FIELD | HA_NO_COPY_ON_ALTER); + HA_ANY_INDEX_MAY_BE_UNIQUE | HA_CAN_BIT_FIELD | + HA_NO_COPY_ON_ALTER); } ulong index_flags(uint inx, uint part, bool all_parts) const { |