Bug #28842 Different 'duplicate key' error code between 5.0 and 5.1

The patch for WL 1563 added a new duplicate key error message so that the
  key name could be provided instead of the key number. But the error code
  for the new message was used even though that did not need to change.

  This could cause unnecessary problems for applications that used the old
  ER_DUP_ENTRY error code to detect duplicate key errors.


mysql-test/t/auto_increment.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/create.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/create_select_tmp.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/ctype_ucs2_def.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/ctype_utf8.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/delayed.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/heap.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/heap_btree.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/heap_hash.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/innodb.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/insert_select.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/insert_update.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/join_outer.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/key.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/merge.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/myisam.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/ndb_basic.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/ndb_charset.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/ndb_index_unique.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/ndb_insert.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/ndb_replace.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/ndb_update.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/replace.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/rpl_err_ignoredtable.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/rpl_ndb_do_table.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/rpl_row_create_table.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/rpl_sp.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/show_check.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/sp-error.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/sp.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/sp_trans.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/sp_trans_log.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/temp_table.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/type_binary.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/type_bit.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/type_bit_innodb.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/type_blob.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/t/type_varchar.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/r/create.result:
  Update ER_DUP_ENTRY-related error message values
mysql-test/r/rpl_sp.result:
  Update ER_DUP_ENTRY-related error message values
mysql-test/r/sp.result:
  Update ER_DUP_ENTRY-related error message values
mysql-test/include/mix1.inc:
  Update ER_DUP_ENTRY-related error message values
mysql-test/include/mix2.inc:
  Update ER_DUP_ENTRY-related error message values
mysql-test/include/ps_modify.inc:
  Update ER_DUP_ENTRY-related error message values
mysql-test/include/query_cache.inc:
  Update ER_DUP_ENTRY-related error message values
mysql-test/include/varchar.inc:
  Update ER_DUP_ENTRY-related error message values
mysql-test/extra/binlog_tests/insert_select-binlog.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/extra/rpl_tests/rpl_auto_increment.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/extra/rpl_tests/rpl_foreign_key.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/extra/rpl_tests/rpl_insert_delayed.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/extra/rpl_tests/rpl_insert_id.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/extra/rpl_tests/rpl_insert_id_pk.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/extra/rpl_tests/rpl_loaddata.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/extra/rpl_tests/rpl_row_basic.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/extra/rpl_tests/rpl_stm_EE_err2.test:
  Update ER_DUP_ENTRY-related error message values
mysql-test/extra/rpl_tests/rpl_trig004.test:
  Update ER_DUP_ENTRY-related error message values
sql/handler.cc:
  Restore use of ER_DUP_ENTRY error code even when ER_DUP_ENTRY_WITH_KEY_NAME
  error message is being used. (Bug #28842)
This commit is contained in:
unknown 2007-06-06 10:57:07 -07:00
commit 0f6047e455
58 changed files with 237 additions and 238 deletions

View file

@ -153,7 +153,7 @@ drop table if exists t1,t2;
CREATE TABLE t1 (a int not null);
INSERT INTO t1 values (1),(2),(1);
--error ER_DUP_ENTRY_WITH_KEY_NAME
--error ER_DUP_ENTRY
CREATE TABLE t2 (primary key(a)) SELECT * FROM t1;
--error 1146
SELECT * from t2;
@ -232,7 +232,7 @@ insert into t1 values (1,1);
create table if not exists t1 select 2;
select * from t1;
create table if not exists t1 select 3 as 'a',4 as 'b';
--error ER_DUP_ENTRY_WITH_KEY_NAME
--error ER_DUP_ENTRY
create table if not exists t1 select 3 as 'a',3 as 'b';
show warnings;
show status like "Opened_tables";
@ -698,7 +698,7 @@ create table t1 (a int);
create table if not exists t1 select 1 as a, 2 as b;
drop table t1;
# Finally error which happens during insert
--error ER_DUP_ENTRY_WITH_KEY_NAME
--error ER_DUP_ENTRY
create table t1 (primary key (a)) (select 1 as a) union all (select 1 as a);
# What happens if table already exists ?
create table t1 (i int);
@ -712,7 +712,7 @@ create table t1 select coalesce('a' collate latin1_swedish_ci,'b' collate latin1
select * from t1;
# Error which happens during insertion of rows
alter table t1 add primary key (i);
--error ER_DUP_ENTRY_WITH_KEY_NAME
--error ER_DUP_ENTRY
create table if not exists t1 (select 2 as i) union all (select 2 as i);
select * from t1;
drop table t1;
@ -798,30 +798,30 @@ drop table t1;
CREATE TABLE t1 (a int, b int);
insert into t1 values (1,1),(1,2);
--error ER_DUP_ENTRY_WITH_KEY_NAME
--error ER_DUP_ENTRY
CREATE TABLE t2 (primary key (a)) select * from t1;
# This should give warning
drop table if exists t2;
--error ER_DUP_ENTRY_WITH_KEY_NAME
--error ER_DUP_ENTRY
CREATE TEMPORARY TABLE t2 (primary key (a)) select * from t1;
# This should give warning
drop table if exists t2;
CREATE TABLE t2 (a int, b int, primary key (a));
--error ER_DUP_ENTRY_WITH_KEY_NAME
--error ER_DUP_ENTRY
CREATE TABLE IF NOT EXISTS t2 (primary key (a)) select * from t1;
SELECT * from t2;
TRUNCATE table t2;
--error ER_DUP_ENTRY_WITH_KEY_NAME
--error ER_DUP_ENTRY
INSERT INTO t2 select * from t1;
SELECT * from t2;
drop table t2;
CREATE TEMPORARY TABLE t2 (a int, b int, primary key (a));
--error ER_DUP_ENTRY_WITH_KEY_NAME
--error ER_DUP_ENTRY
CREATE TEMPORARY TABLE IF NOT EXISTS t2 (primary key (a)) select * from t1;
SELECT * from t2;
TRUNCATE table t2;
--error ER_DUP_ENTRY_WITH_KEY_NAME
--error ER_DUP_ENTRY
INSERT INTO t2 select * from t1;
SELECT * from t2;
drop table t1,t2;