1
0
mirror of https://github.com/postgres/postgres.git synced 2025-04-29 13:56:47 +03:00

Make some error strings more generic

It's undesirable to have SQL commands or configuration options in a
translatable error string, so take some of these out.
This commit is contained in:
Alvaro Herrera 2023-10-20 22:52:15 +02:00
parent c79ca0485a
commit b62a3fa1cc
No known key found for this signature in database
GPG Key ID: 1C20ACB9D5C564AE
3 changed files with 33 additions and 12 deletions

View File

@ -250,19 +250,22 @@ DefineCollation(ParseState *pstate, List *names, List *parameters, bool if_not_e
if (!collcollate) if (!collcollate)
ereport(ERROR, ereport(ERROR,
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION), (errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
errmsg("parameter \"lc_collate\" must be specified"))); errmsg("parameter \"%s\" must be specified",
"lc_collate")));
if (!collctype) if (!collctype)
ereport(ERROR, ereport(ERROR,
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION), (errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
errmsg("parameter \"lc_ctype\" must be specified"))); errmsg("parameter \"%s\" must be specified",
"lc_ctype")));
} }
else if (collprovider == COLLPROVIDER_ICU) else if (collprovider == COLLPROVIDER_ICU)
{ {
if (!colliculocale) if (!colliculocale)
ereport(ERROR, ereport(ERROR,
(errcode(ERRCODE_INVALID_OBJECT_DEFINITION), (errcode(ERRCODE_INVALID_OBJECT_DEFINITION),
errmsg("parameter \"locale\" must be specified"))); errmsg("parameter \"%s\" must be specified",
"locale")));
/* /*
* During binary upgrade, preserve the locale string. Otherwise, * During binary upgrade, preserve the locale string. Otherwise,
@ -416,7 +419,9 @@ AlterCollation(AlterCollationStmt *stmt)
if (collOid == DEFAULT_COLLATION_OID) if (collOid == DEFAULT_COLLATION_OID)
ereport(ERROR, ereport(ERROR,
(errmsg("cannot refresh version of default collation"), (errmsg("cannot refresh version of default collation"),
errhint("Use ALTER DATABASE ... REFRESH COLLATION VERSION instead."))); /* translator: %s is an SQL command */
errhint("Use %s instead.",
"ALTER DATABASE ... REFRESH COLLATION VERSION")));
if (!object_ownercheck(CollationRelationId, collOid, GetUserId())) if (!object_ownercheck(CollationRelationId, collOid, GetUserId()))
aclcheck_error(ACLCHECK_NOT_OWNER, OBJECT_COLLATION, aclcheck_error(ACLCHECK_NOT_OWNER, OBJECT_COLLATION,

View File

@ -7701,7 +7701,9 @@ ATExecColumnDefault(Relation rel, const char *colName,
(errcode(ERRCODE_SYNTAX_ERROR), (errcode(ERRCODE_SYNTAX_ERROR),
errmsg("column \"%s\" of relation \"%s\" is an identity column", errmsg("column \"%s\" of relation \"%s\" is an identity column",
colName, RelationGetRelationName(rel)), colName, RelationGetRelationName(rel)),
newDefault ? 0 : errhint("Use ALTER TABLE ... ALTER COLUMN ... DROP IDENTITY instead."))); /* translator: %s is an SQL ALTER command */
newDefault ? 0 : errhint("Use %s instead.",
"ALTER TABLE ... ALTER COLUMN ... DROP IDENTITY")));
if (TupleDescAttr(tupdesc, attnum - 1)->attgenerated) if (TupleDescAttr(tupdesc, attnum - 1)->attgenerated)
ereport(ERROR, ereport(ERROR,
@ -7709,7 +7711,9 @@ ATExecColumnDefault(Relation rel, const char *colName,
errmsg("column \"%s\" of relation \"%s\" is a generated column", errmsg("column \"%s\" of relation \"%s\" is a generated column",
colName, RelationGetRelationName(rel)), colName, RelationGetRelationName(rel)),
newDefault || TupleDescAttr(tupdesc, attnum - 1)->attgenerated != ATTRIBUTE_GENERATED_STORED ? 0 : newDefault || TupleDescAttr(tupdesc, attnum - 1)->attgenerated != ATTRIBUTE_GENERATED_STORED ? 0 :
errhint("Use ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION instead."))); /* translator: %s is an SQL ALTER command */
errhint("Use %s instead.",
"ALTER TABLE ... ALTER COLUMN ... DROP EXPRESSION")));
/* /*
* Remove any old default for the column. We use RESTRICT here for * Remove any old default for the column. We use RESTRICT here for
@ -13900,7 +13904,9 @@ ATExecChangeOwner(Oid relationOid, Oid newOwnerId, bool recursing, LOCKMODE lock
(errcode(ERRCODE_WRONG_OBJECT_TYPE), (errcode(ERRCODE_WRONG_OBJECT_TYPE),
errmsg("\"%s\" is a composite type", errmsg("\"%s\" is a composite type",
NameStr(tuple_class->relname)), NameStr(tuple_class->relname)),
errhint("Use ALTER TYPE instead."))); /* translator: %s is an SQL ALTER command */
errhint("Use %s instead.",
"ALTER TYPE")));
break; break;
case RELKIND_TOASTVALUE: case RELKIND_TOASTVALUE:
if (recursing) if (recursing)
@ -17178,7 +17184,9 @@ RangeVarCallbackForAlterRelation(const RangeVar *rv, Oid relid, Oid oldrelid,
ereport(ERROR, ereport(ERROR,
(errcode(ERRCODE_WRONG_OBJECT_TYPE), (errcode(ERRCODE_WRONG_OBJECT_TYPE),
errmsg("\"%s\" is a composite type", rv->relname), errmsg("\"%s\" is a composite type", rv->relname),
errhint("Use ALTER TYPE instead."))); /* translator: %s is an SQL ALTER command */
errhint("Use %s instead.",
"ALTER TYPE")));
/* /*
* Don't allow ALTER TABLE .. SET SCHEMA on relations that can't be moved * Don't allow ALTER TABLE .. SET SCHEMA on relations that can't be moved
@ -17197,7 +17205,9 @@ RangeVarCallbackForAlterRelation(const RangeVar *rv, Oid relid, Oid oldrelid,
(errcode(ERRCODE_WRONG_OBJECT_TYPE), (errcode(ERRCODE_WRONG_OBJECT_TYPE),
errmsg("cannot change schema of composite type \"%s\"", errmsg("cannot change schema of composite type \"%s\"",
rv->relname), rv->relname),
errhint("Use ALTER TYPE instead."))); /* translator: %s is an SQL ALTER command */
errhint("Use %s instead.",
"ALTER TYPE")));
else if (relkind == RELKIND_TOASTVALUE) else if (relkind == RELKIND_TOASTVALUE)
ereport(ERROR, ereport(ERROR,
(errcode(ERRCODE_WRONG_OBJECT_TYPE), (errcode(ERRCODE_WRONG_OBJECT_TYPE),

View File

@ -3633,7 +3633,9 @@ RenameType(RenameStmt *stmt)
(errcode(ERRCODE_WRONG_OBJECT_TYPE), (errcode(ERRCODE_WRONG_OBJECT_TYPE),
errmsg("%s is a table's row type", errmsg("%s is a table's row type",
format_type_be(typeOid)), format_type_be(typeOid)),
errhint("Use ALTER TABLE instead."))); /* translator: %s is an SQL ALTER command */
errhint("Use %s instead.",
"ALTER TABLE")));
/* don't allow direct alteration of array types, either */ /* don't allow direct alteration of array types, either */
if (IsTrueArrayType(typTup)) if (IsTrueArrayType(typTup))
@ -3714,7 +3716,9 @@ AlterTypeOwner(List *names, Oid newOwnerId, ObjectType objecttype)
(errcode(ERRCODE_WRONG_OBJECT_TYPE), (errcode(ERRCODE_WRONG_OBJECT_TYPE),
errmsg("%s is a table's row type", errmsg("%s is a table's row type",
format_type_be(typeOid)), format_type_be(typeOid)),
errhint("Use ALTER TABLE instead."))); /* translator: %s is an SQL ALTER command */
errhint("Use %s instead.",
"ALTER TABLE")));
/* don't allow direct alteration of array types, either */ /* don't allow direct alteration of array types, either */
if (IsTrueArrayType(typTup)) if (IsTrueArrayType(typTup))
@ -4005,7 +4009,9 @@ AlterTypeNamespaceInternal(Oid typeOid, Oid nspOid,
(errcode(ERRCODE_WRONG_OBJECT_TYPE), (errcode(ERRCODE_WRONG_OBJECT_TYPE),
errmsg("%s is a table's row type", errmsg("%s is a table's row type",
format_type_be(typeOid)), format_type_be(typeOid)),
errhint("Use ALTER TABLE instead."))); /* translator: %s is an SQL ALTER command */
errhint("Use %s instead.",
"ALTER TABLE")));
if (oldNspOid != nspOid) if (oldNspOid != nspOid)
{ {