diff options
Diffstat (limited to 'src/backend/parser/parse_utilcmd.c')
-rw-r--r-- | src/backend/parser/parse_utilcmd.c | 49 |
1 files changed, 6 insertions, 43 deletions
diff --git a/src/backend/parser/parse_utilcmd.c b/src/backend/parser/parse_utilcmd.c index 89d81bff624..75c8d863dcd 100644 --- a/src/backend/parser/parse_utilcmd.c +++ b/src/backend/parser/parse_utilcmd.c @@ -19,7 +19,7 @@ * Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/backend/parser/parse_utilcmd.c,v 2.33 2009/12/20 18:28:14 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/parser/parse_utilcmd.c,v 2.34 2009/12/22 23:54:17 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -745,14 +745,12 @@ transformInhRelation(ParseState *pstate, CreateStmtContext *cxt, /* Copy comment on index */ if (inhRelation->options & CREATE_TABLE_LIKE_COMMENTS) { - Form_pg_attribute *attrs; - CommentStmt *stmt; - int colno; - comment = GetComment(parent_index_oid, RelationRelationId, 0); - + if (comment != NULL) { + CommentStmt *stmt; + /* * We have to assign the index a name now, so that we * can reference it in CommentStmt. @@ -771,41 +769,6 @@ transformInhRelation(ParseState *pstate, CreateStmtContext *cxt, cxt->alist = lappend(cxt->alist, stmt); } - - /* Copy comments on index's columns */ - attrs = RelationGetDescr(parent_index)->attrs; - for (colno = 1; - colno <= RelationGetNumberOfAttributes(parent_index); - colno++) - { - char *attname; - - comment = GetComment(parent_index_oid, RelationRelationId, - colno); - if (comment == NULL) - continue; - - /* - * We have to assign the index a name now, so that we - * can reference it in CommentStmt. - */ - if (index_stmt->idxname == NULL) - index_stmt->idxname = chooseIndexName(cxt->relation, - index_stmt); - - attname = NameStr(attrs[colno - 1]->attname); - - stmt = makeNode(CommentStmt); - stmt->objtype = OBJECT_COLUMN; - stmt->objname = - list_make3(makeString(cxt->relation->schemaname), - makeString(index_stmt->idxname), - makeString(attname)); - stmt->objargs = NIL; - stmt->comment = comment; - - cxt->alist = lappend(cxt->alist, stmt); - } } /* Save it in the inh_indexes list for the time being */ @@ -832,12 +795,12 @@ static char * chooseIndexName(const RangeVar *relation, IndexStmt *index_stmt) { Oid namespaceId; - + namespaceId = RangeVarGetCreationNamespace(relation); if (index_stmt->primary) { /* no need for column list with pkey */ - return ChooseRelationName(relation->relname, NULL, + return ChooseRelationName(relation->relname, NULL, "pkey", namespaceId); } else if (index_stmt->excludeOpNames != NIL) |