Commit a1d437b0 authored by vasil's avatar vasil

branches/5.1:

Merge a change from MySQL (this fixes the failing innodb-replace test):

  revno: 2659
  committer: Mattias Jonsson <mattiasj@mysql.com>
  branch nick: b31210-51-bugteam
  timestamp: Tue 2008-06-03 13:25:41 +0200
  message:
    Bug#31210: INSERT DELAYED crashes server when used on partitioned tables
      
    Problem was an unclear error message since it could suggest that
    MyISAM did not support INSERT DELAYED.
    Changed the error message to say that DELAYED is not supported by the
    table, instead of the table's storage engine.
    The confusion is that a partitioned table is in somewhat sense using
    the partitioning storage engine, which in turn uses the ordinary
    storage engine. By saying that the table does not support DELAYED we
    do not give any extra informantion about the storage engine or if it
    is partitioned.
  modified:
    mysql-test/r/innodb-replace.result
    mysql-test/t/innodb-replace.test
    mysql-test/t/merge.test
    mysql-test/t/partition_hash.test
    sql/share/errmsg.txt
    sql/sql_insert.cc
parent 011a6c0b
...@@ -3,11 +3,11 @@ create table t1 (c1 char(5) unique not null, c2 int, stamp timestamp) engine=inn ...@@ -3,11 +3,11 @@ create table t1 (c1 char(5) unique not null, c2 int, stamp timestamp) engine=inn
select * from t1; select * from t1;
c1 c2 stamp c1 c2 stamp
replace delayed into t1 (c1, c2) values ( "text1","11"); replace delayed into t1 (c1, c2) values ( "text1","11");
ERROR HY000: Table storage engine for 't1' doesn't have this option ERROR HY000: DELAYED option not supported for table 't1'
select * from t1; select * from t1;
c1 c2 stamp c1 c2 stamp
replace delayed into t1 (c1, c2) values ( "text1","12"); replace delayed into t1 (c1, c2) values ( "text1","12");
ERROR HY000: Table storage engine for 't1' doesn't have this option ERROR HY000: DELAYED option not supported for table 't1'
select * from t1; select * from t1;
c1 c2 stamp c1 c2 stamp
drop table t1; drop table t1;
...@@ -11,10 +11,10 @@ drop table if exists t1; ...@@ -11,10 +11,10 @@ drop table if exists t1;
# #
create table t1 (c1 char(5) unique not null, c2 int, stamp timestamp) engine=innodb; create table t1 (c1 char(5) unique not null, c2 int, stamp timestamp) engine=innodb;
select * from t1; select * from t1;
--error 1031 --error ER_DELAYED_NOT_SUPPORTED
replace delayed into t1 (c1, c2) values ( "text1","11"); replace delayed into t1 (c1, c2) values ( "text1","11");
select * from t1; select * from t1;
--error 1031 --error ER_DELAYED_NOT_SUPPORTED
replace delayed into t1 (c1, c2) values ( "text1","12"); replace delayed into t1 (c1, c2) values ( "text1","12");
select * from t1; select * from t1;
drop table t1; drop table t1;
......
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