From 9a8b73147c07e02e10e0d0a34aa99d72e3336fb2 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 29 Mar 2011 17:54:27 -0400 Subject: [PATCH] Clean up overly complex code for issuing some related error messages. The original version was unreadable, and not mechanically checkable either. --- src/backend/commands/tablecmds.c | 41 ++++++++++++++++++++------------ 1 file changed, 26 insertions(+), 15 deletions(-) diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c index bd18db3b83..886b656b43 100644 --- a/src/backend/commands/tablecmds.c +++ b/src/backend/commands/tablecmds.c @@ -3944,23 +3944,34 @@ find_composite_type_dependencies(Oid typeOid, Relation origRelation, if (rel->rd_rel->relkind == RELKIND_RELATION) { - const char *msg; - - if (origTypeName - || origRelation->rd_rel->relkind == RELKIND_COMPOSITE_TYPE) - msg = gettext_noop("cannot alter type \"%s\" because column \"%s\".\"%s\" uses it"); + if (origTypeName) + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("cannot alter type \"%s\" because column \"%s\".\"%s\" uses it", + origTypeName, + RelationGetRelationName(rel), + NameStr(att->attname)))); + else if (origRelation->rd_rel->relkind == RELKIND_COMPOSITE_TYPE) + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("cannot alter type \"%s\" because column \"%s\".\"%s\" uses it", + RelationGetRelationName(origRelation), + RelationGetRelationName(rel), + NameStr(att->attname)))); else if (origRelation->rd_rel->relkind == RELKIND_FOREIGN_TABLE) - msg = gettext_noop("cannot alter foreign table \"%s\" because column \"%s\".\"%s\" uses its rowtype"); + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("cannot alter foreign table \"%s\" because column \"%s\".\"%s\" uses its rowtype", + RelationGetRelationName(origRelation), + RelationGetRelationName(rel), + NameStr(att->attname)))); else - msg = gettext_noop("cannot alter table \"%s\" because column \"%s\".\"%s\" uses its rowtype"); - - ereport(ERROR, - (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), - errmsg(msg, - origTypeName ? origTypeName - : RelationGetRelationName(origRelation), - RelationGetRelationName(rel), - NameStr(att->attname)))); + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("cannot alter table \"%s\" because column \"%s\".\"%s\" uses its rowtype", + RelationGetRelationName(origRelation), + RelationGetRelationName(rel), + NameStr(att->attname)))); } else if (OidIsValid(rel->rd_rel->reltype)) { -- 2.40.0