aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRobert Haas <rhaas@postgresql.org>2010-10-19 07:21:58 -0400
committerRobert Haas <rhaas@postgresql.org>2010-10-19 07:21:58 -0400
commit262c1a42dcd36831a964099659026fb9cec0eecc (patch)
tree4d5a5aa309798bf9df094427d0c3f35e2bcb2806 /src
parent9df96f9bb1cb8bc0350f02bbd0a113480e84224a (diff)
downloadpostgresql-262c1a42dcd36831a964099659026fb9cec0eecc.tar.gz
postgresql-262c1a42dcd36831a964099659026fb9cec0eecc.zip
Unbreak comments on composite type attributes.
Report and diagnosis by Peter Eisentraut.
Diffstat (limited to 'src')
-rw-r--r--src/backend/catalog/objectaddress.c2
-rw-r--r--src/test/regress/expected/create_type.out4
-rw-r--r--src/test/regress/sql/create_type.sql3
3 files changed, 8 insertions, 1 deletions
diff --git a/src/backend/catalog/objectaddress.c b/src/backend/catalog/objectaddress.c
index 93f5ac6beee..77f0208ccd1 100644
--- a/src/backend/catalog/objectaddress.c
+++ b/src/backend/catalog/objectaddress.c
@@ -473,7 +473,7 @@ get_object_address_attribute(ObjectType objtype, List *objname,
/* Extract relation name and open relation. */
attname = strVal(lfirst(list_tail(objname)));
relname = list_truncate(list_copy(objname), list_length(objname) - 1);
- relation = heap_openrv(makeRangeVarFromNameList(relname), lockmode);
+ relation = relation_openrv(makeRangeVarFromNameList(relname), lockmode);
reloid = RelationGetRelid(relation);
/* Look up attribute and construct return value. */
diff --git a/src/test/regress/expected/create_type.out b/src/test/regress/expected/create_type.out
index 1d3a22612d3..9d3a82e153a 100644
--- a/src/test/regress/expected/create_type.out
+++ b/src/test/regress/expected/create_type.out
@@ -97,6 +97,10 @@ COMMENT ON TYPE bad IS 'bad comment';
ERROR: type "bad" does not exist
COMMENT ON TYPE default_test_row IS 'good comment';
COMMENT ON TYPE default_test_row IS NULL;
+COMMENT ON COLUMN default_test_row.nope IS 'bad comment';
+ERROR: column "nope" of relation "default_test_row" does not exist
+COMMENT ON COLUMN default_test_row.f1 IS 'good comment';
+COMMENT ON COLUMN default_test_row.f1 IS NULL;
-- Check shell type create for existing types
CREATE TYPE text_w_default; -- should fail
ERROR: type "text_w_default" already exists
diff --git a/src/test/regress/sql/create_type.sql b/src/test/regress/sql/create_type.sql
index b9cd7af1ab8..c667313c715 100644
--- a/src/test/regress/sql/create_type.sql
+++ b/src/test/regress/sql/create_type.sql
@@ -95,6 +95,9 @@ SELECT * FROM get_default_test();
COMMENT ON TYPE bad IS 'bad comment';
COMMENT ON TYPE default_test_row IS 'good comment';
COMMENT ON TYPE default_test_row IS NULL;
+COMMENT ON COLUMN default_test_row.nope IS 'bad comment';
+COMMENT ON COLUMN default_test_row.f1 IS 'good comment';
+COMMENT ON COLUMN default_test_row.f1 IS NULL;
-- Check shell type create for existing types
CREATE TYPE text_w_default; -- should fail