Clarify some error messages about duplicate things.
This commit is contained in:
parent
55477d742e
commit
f4a3789b39
@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/backend/access/common/reloptions.c,v 1.4 2007/02/27 23:48:06 tgl Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/access/common/reloptions.c,v 1.5 2007/06/03 22:16:02 petere Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -206,7 +206,7 @@ parseRelOptions(Datum options, int numkeywords, const char *const * keywords,
|
||||
if (values[j] && validate)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
|
||||
errmsg("duplicate parameter \"%s\"",
|
||||
errmsg("parameter \"%s\" specified more than once",
|
||||
keywords[j])));
|
||||
value_len = text_len - kw_len - 1;
|
||||
value = (char *) palloc(value_len + 1);
|
||||
|
@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/backend/access/nbtree/nbtinsert.c,v 1.157 2007/05/20 21:08:19 tgl Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/access/nbtree/nbtinsert.c,v 1.158 2007/06/03 22:16:02 petere Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -287,7 +287,7 @@ _bt_check_unique(Relation rel, IndexTuple itup, Relation heapRel,
|
||||
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_UNIQUE_VIOLATION),
|
||||
errmsg("duplicate key violates unique constraint \"%s\"",
|
||||
errmsg("duplicate key value violates unique constraint \"%s\"",
|
||||
RelationGetRelationName(rel))));
|
||||
}
|
||||
else if (htup.t_data != NULL)
|
||||
|
@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/backend/catalog/heap.c,v 1.321 2007/05/14 20:24:41 tgl Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/catalog/heap.c,v 1.322 2007/06/03 22:16:02 petere Exp $
|
||||
*
|
||||
*
|
||||
* INTERFACE ROUTINES
|
||||
@ -375,7 +375,7 @@ CheckAttributeNamesTypes(TupleDesc tupdesc, char relkind)
|
||||
NameStr(tupdesc->attrs[i]->attname)) == 0)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_DUPLICATE_COLUMN),
|
||||
errmsg("column name \"%s\" is duplicated",
|
||||
errmsg("column name \"%s\" specified more than once",
|
||||
NameStr(tupdesc->attrs[j]->attname))));
|
||||
}
|
||||
}
|
||||
|
@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/backend/commands/tablecmds.c,v 1.226 2007/06/03 17:06:25 tgl Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/commands/tablecmds.c,v 1.227 2007/06/03 22:16:03 petere Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -791,7 +791,7 @@ MergeAttributes(List *schema, List *supers, bool istemp,
|
||||
if (strcmp(coldef->colname, restdef->colname) == 0)
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_DUPLICATE_COLUMN),
|
||||
errmsg("column \"%s\" duplicated",
|
||||
errmsg("column \"%s\" specified more than once",
|
||||
coldef->colname)));
|
||||
}
|
||||
}
|
||||
@ -839,7 +839,7 @@ MergeAttributes(List *schema, List *supers, bool istemp,
|
||||
if (list_member_oid(parentOids, RelationGetRelid(relation)))
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_DUPLICATE_TABLE),
|
||||
errmsg("inherited relation \"%s\" duplicated",
|
||||
errmsg("relation \"%s\" would be inherited from more than once",
|
||||
parent->relname)));
|
||||
|
||||
parentOids = lappend_oid(parentOids, RelationGetRelid(relation));
|
||||
@ -1139,7 +1139,7 @@ add_nonduplicate_constraint(Constraint *cdef, ConstrCheck *check, int *ncheck)
|
||||
return; /* duplicate constraint, so ignore it */
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_DUPLICATE_OBJECT),
|
||||
errmsg("duplicate check constraint name \"%s\"",
|
||||
errmsg("check constraint name \"%s\" appears multiple times but with different expressions",
|
||||
cdef->name)));
|
||||
}
|
||||
/* No match on name, so add it to array */
|
||||
@ -6013,7 +6013,7 @@ ATExecAddInherit(Relation child_rel, RangeVar *parent)
|
||||
if (inh->inhparent == RelationGetRelid(parent_rel))
|
||||
ereport(ERROR,
|
||||
(errcode(ERRCODE_DUPLICATE_TABLE),
|
||||
errmsg("inherited relation \"%s\" duplicated",
|
||||
errmsg("relation \"%s\" would be inherited from more than once",
|
||||
RelationGetRelationName(parent_rel))));
|
||||
if (inh->inhseqno > inhseqno)
|
||||
inhseqno = inh->inhseqno;
|
||||
|
@ -360,7 +360,7 @@ alter table atacc3 add constraint foo check (test2>0);
|
||||
alter table atacc3 inherit atacc2;
|
||||
-- fail due to duplicates and circular inheritance
|
||||
alter table atacc3 inherit atacc2;
|
||||
ERROR: inherited relation "atacc2" duplicated
|
||||
ERROR: relation "atacc2" would be inherited from more than once
|
||||
alter table atacc2 inherit atacc3;
|
||||
ERROR: circular inheritance not allowed
|
||||
DETAIL: "atacc3" is already a child of "atacc2".
|
||||
@ -402,7 +402,7 @@ NOTICE: ALTER TABLE / ADD UNIQUE will create implicit index "atacc_test1" for t
|
||||
insert into atacc1 (test) values (2);
|
||||
-- should fail
|
||||
insert into atacc1 (test) values (2);
|
||||
ERROR: duplicate key violates unique constraint "atacc_test1"
|
||||
ERROR: duplicate key value violates unique constraint "atacc_test1"
|
||||
-- should succeed
|
||||
insert into atacc1 (test) values (4);
|
||||
-- try adding a unique oid constraint
|
||||
@ -437,7 +437,7 @@ NOTICE: ALTER TABLE / ADD UNIQUE will create implicit index "atacc_test1" for t
|
||||
insert into atacc1 (test,test2) values (4,4);
|
||||
-- should fail
|
||||
insert into atacc1 (test,test2) values (4,4);
|
||||
ERROR: duplicate key violates unique constraint "atacc_test1"
|
||||
ERROR: duplicate key value violates unique constraint "atacc_test1"
|
||||
-- should all succeed
|
||||
insert into atacc1 (test,test2) values (4,5);
|
||||
insert into atacc1 (test,test2) values (5,4);
|
||||
@ -451,7 +451,7 @@ NOTICE: ALTER TABLE / ADD UNIQUE will create implicit index "atacc1_test2_key"
|
||||
-- should fail for @@ second one @@
|
||||
insert into atacc1 (test2, test) values (3, 3);
|
||||
insert into atacc1 (test2, test) values (2, 3);
|
||||
ERROR: duplicate key violates unique constraint "atacc1_test_key"
|
||||
ERROR: duplicate key value violates unique constraint "atacc1_test_key"
|
||||
drop table atacc1;
|
||||
-- test primary key constraint adding
|
||||
create table atacc1 ( test int ) with oids;
|
||||
@ -462,7 +462,7 @@ NOTICE: ALTER TABLE / ADD PRIMARY KEY will create implicit index "atacc_test1"
|
||||
insert into atacc1 (test) values (2);
|
||||
-- should fail
|
||||
insert into atacc1 (test) values (2);
|
||||
ERROR: duplicate key violates unique constraint "atacc_test1"
|
||||
ERROR: duplicate key value violates unique constraint "atacc_test1"
|
||||
-- should succeed
|
||||
insert into atacc1 (test) values (4);
|
||||
-- inserting NULL should fail
|
||||
@ -517,7 +517,7 @@ ERROR: multiple primary keys for table "atacc1" are not allowed
|
||||
insert into atacc1 (test,test2) values (4,4);
|
||||
-- should fail
|
||||
insert into atacc1 (test,test2) values (4,4);
|
||||
ERROR: duplicate key violates unique constraint "atacc_test1"
|
||||
ERROR: duplicate key value violates unique constraint "atacc_test1"
|
||||
insert into atacc1 (test,test2) values (NULL,3);
|
||||
ERROR: null value in column "test" violates not-null constraint
|
||||
insert into atacc1 (test,test2) values (3, NULL);
|
||||
@ -535,7 +535,7 @@ NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "atacc1_pkey" for
|
||||
-- only first should succeed
|
||||
insert into atacc1 (test2, test) values (3, 3);
|
||||
insert into atacc1 (test2, test) values (2, 3);
|
||||
ERROR: duplicate key violates unique constraint "atacc1_pkey"
|
||||
ERROR: duplicate key value violates unique constraint "atacc1_pkey"
|
||||
insert into atacc1 (test2, test) values (1, NULL);
|
||||
ERROR: null value in column "test" violates not-null constraint
|
||||
drop table atacc1;
|
||||
|
@ -703,7 +703,7 @@ insert into arr_tbl values ('{1,2,3}');
|
||||
insert into arr_tbl values ('{1,2}');
|
||||
-- failure expected:
|
||||
insert into arr_tbl values ('{1,2,3}');
|
||||
ERROR: duplicate key violates unique constraint "arr_tbl_f1_key"
|
||||
ERROR: duplicate key value violates unique constraint "arr_tbl_f1_key"
|
||||
insert into arr_tbl values ('{2,3,4}');
|
||||
insert into arr_tbl values ('{1,5,3}');
|
||||
insert into arr_tbl values ('{1,2,10}');
|
||||
|
@ -348,7 +348,7 @@ INSERT INTO func_index_heap VALUES('AB','CDEFG');
|
||||
INSERT INTO func_index_heap VALUES('QWE','RTY');
|
||||
-- this should fail because of unique index:
|
||||
INSERT INTO func_index_heap VALUES('ABCD', 'EF');
|
||||
ERROR: duplicate key violates unique constraint "func_index_index"
|
||||
ERROR: duplicate key value violates unique constraint "func_index_index"
|
||||
-- but this shouldn't:
|
||||
INSERT INTO func_index_heap VALUES('QWERTY');
|
||||
--
|
||||
@ -362,7 +362,7 @@ INSERT INTO func_index_heap VALUES('AB','CDEFG');
|
||||
INSERT INTO func_index_heap VALUES('QWE','RTY');
|
||||
-- this should fail because of unique index:
|
||||
INSERT INTO func_index_heap VALUES('ABCD', 'EF');
|
||||
ERROR: duplicate key violates unique constraint "func_index_index"
|
||||
ERROR: duplicate key value violates unique constraint "func_index_index"
|
||||
-- but this shouldn't:
|
||||
INSERT INTO func_index_heap VALUES('QWERTY');
|
||||
--
|
||||
@ -386,7 +386,7 @@ INSERT INTO concur_heap VALUES ('b','b');
|
||||
CREATE UNIQUE INDEX CONCURRENTLY concur_index2 ON concur_heap(f1);
|
||||
-- check if constraint is set up properly to be enforced
|
||||
INSERT INTO concur_heap VALUES ('b','x');
|
||||
ERROR: duplicate key violates unique constraint "concur_index2"
|
||||
ERROR: duplicate key value violates unique constraint "concur_index2"
|
||||
-- check if constraint is enforced properly at build time
|
||||
CREATE UNIQUE INDEX CONCURRENTLY concur_index3 ON concur_heap(f2);
|
||||
ERROR: could not create unique index
|
||||
|
@ -605,7 +605,7 @@ SELECT * FROM a; /* Has ee entry */
|
||||
(1 row)
|
||||
|
||||
CREATE TABLE inhf (LIKE inhx, LIKE inhx); /* Throw error */
|
||||
ERROR: column "xx" duplicated
|
||||
ERROR: column "xx" specified more than once
|
||||
CREATE TABLE inhf (LIKE inhx INCLUDING DEFAULTS INCLUDING CONSTRAINTS);
|
||||
INSERT INTO inhf DEFAULT VALUES;
|
||||
SELECT * FROM inhf; /* Single entry with value 'text' */
|
||||
|
@ -1516,7 +1516,7 @@ select * from PField_v1 where pfname = 'PF0_2' order by slotname;
|
||||
-- Finally we want errors
|
||||
--
|
||||
insert into PField values ('PF1_1', 'should fail due to unique index');
|
||||
ERROR: duplicate key violates unique constraint "pfield_name"
|
||||
ERROR: duplicate key value violates unique constraint "pfield_name"
|
||||
update PSlot set backlink = 'WS.not.there' where slotname = 'PS.base.a1';
|
||||
ERROR: WS.not.there does not exist
|
||||
CONTEXT: PL/pgSQL function "tg_backlink_a" line 16 at assignment
|
||||
@ -1530,7 +1530,7 @@ update PSlot set slotlink = 'XX.illegal' where slotname = 'PS.base.a1';
|
||||
ERROR: illegal slotlink beginning with XX
|
||||
CONTEXT: PL/pgSQL function "tg_slotlink_a" line 16 at assignment
|
||||
insert into HSlot values ('HS', 'base.hub1', 1, '');
|
||||
ERROR: duplicate key violates unique constraint "hslot_name"
|
||||
ERROR: duplicate key value violates unique constraint "hslot_name"
|
||||
insert into HSlot values ('HS', 'base.hub1', 20, '');
|
||||
ERROR: no manual manipulation of HSlot
|
||||
delete from HSlot;
|
||||
|
@ -463,13 +463,13 @@ BEGIN;
|
||||
NOTICE: CREATE TABLE / UNIQUE will create implicit index "koju_a_key" for table "koju"
|
||||
INSERT INTO koju VALUES (1);
|
||||
INSERT INTO koju VALUES (1);
|
||||
ERROR: duplicate key violates unique constraint "koju_a_key"
|
||||
ERROR: duplicate key value violates unique constraint "koju_a_key"
|
||||
rollback to x;
|
||||
CREATE TABLE koju (a INT UNIQUE);
|
||||
NOTICE: CREATE TABLE / UNIQUE will create implicit index "koju_a_key" for table "koju"
|
||||
INSERT INTO koju VALUES (1);
|
||||
INSERT INTO koju VALUES (1);
|
||||
ERROR: duplicate key violates unique constraint "koju_a_key"
|
||||
ERROR: duplicate key value violates unique constraint "koju_a_key"
|
||||
ROLLBACK;
|
||||
DROP TABLE foo;
|
||||
DROP TABLE baz;
|
||||
|
@ -106,7 +106,7 @@ CREATE INDEX guid1_hash ON guid1 USING HASH (guid_field);
|
||||
CREATE UNIQUE INDEX guid1_unique_BTREE ON guid1 USING BTREE (guid_field);
|
||||
-- should fail
|
||||
INSERT INTO guid1(guid_field) VALUES('11111111-1111-1111-1111-111111111111');
|
||||
ERROR: duplicate key violates unique constraint "guid1_unique_btree"
|
||||
ERROR: duplicate key value violates unique constraint "guid1_unique_btree"
|
||||
-- check to see whether the new indexes are actually there
|
||||
SELECT count(*) FROM pg_class WHERE relkind='i' AND relname LIKE 'guid%';
|
||||
count
|
||||
|
@ -293,7 +293,7 @@ NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "primary_tbl_pkey
|
||||
INSERT INTO PRIMARY_TBL VALUES (1, 'one');
|
||||
INSERT INTO PRIMARY_TBL VALUES (2, 'two');
|
||||
INSERT INTO PRIMARY_TBL VALUES (1, 'three');
|
||||
ERROR: duplicate key violates unique constraint "primary_tbl_pkey"
|
||||
ERROR: duplicate key value violates unique constraint "primary_tbl_pkey"
|
||||
INSERT INTO PRIMARY_TBL VALUES (4, 'three');
|
||||
INSERT INTO PRIMARY_TBL VALUES (5, 'one');
|
||||
INSERT INTO PRIMARY_TBL (t) VALUES ('six');
|
||||
@ -337,7 +337,7 @@ NOTICE: CREATE TABLE / UNIQUE will create implicit index "unique_tbl_i_key" for
|
||||
INSERT INTO UNIQUE_TBL VALUES (1, 'one');
|
||||
INSERT INTO UNIQUE_TBL VALUES (2, 'two');
|
||||
INSERT INTO UNIQUE_TBL VALUES (1, 'three');
|
||||
ERROR: duplicate key violates unique constraint "unique_tbl_i_key"
|
||||
ERROR: duplicate key value violates unique constraint "unique_tbl_i_key"
|
||||
INSERT INTO UNIQUE_TBL VALUES (4, 'four');
|
||||
INSERT INTO UNIQUE_TBL VALUES (5, 'one');
|
||||
INSERT INTO UNIQUE_TBL (t) VALUES ('six');
|
||||
@ -361,7 +361,7 @@ INSERT INTO UNIQUE_TBL VALUES (1, 'one');
|
||||
INSERT INTO UNIQUE_TBL VALUES (2, 'two');
|
||||
INSERT INTO UNIQUE_TBL VALUES (1, 'three');
|
||||
INSERT INTO UNIQUE_TBL VALUES (1, 'one');
|
||||
ERROR: duplicate key violates unique constraint "unique_tbl_i_key"
|
||||
ERROR: duplicate key value violates unique constraint "unique_tbl_i_key"
|
||||
INSERT INTO UNIQUE_TBL VALUES (5, 'one');
|
||||
INSERT INTO UNIQUE_TBL (t) VALUES ('six');
|
||||
SELECT '' AS five, * FROM UNIQUE_TBL;
|
||||
|
@ -48,7 +48,7 @@ ALTER TABLE testschema.atable SET TABLESPACE testspace;
|
||||
ALTER INDEX testschema.anindex SET TABLESPACE testspace;
|
||||
INSERT INTO testschema.atable VALUES(3); -- ok
|
||||
INSERT INTO testschema.atable VALUES(1); -- fail (checks index)
|
||||
ERROR: duplicate key violates unique constraint "anindex"
|
||||
ERROR: duplicate key value violates unique constraint "anindex"
|
||||
SELECT COUNT(*) FROM testschema.atable; -- checks heap
|
||||
count
|
||||
-------
|
||||
|
Loading…
x
Reference in New Issue
Block a user