Thread: pgsql: Support arrays of composite types, including the rowtypes of
pgsql: Support arrays of composite types, including the rowtypes of
From
tgl@postgresql.org (Tom Lane)
Date:
Log Message: ----------- Support arrays of composite types, including the rowtypes of regular tables and views (but not system catalogs, nor sequences or toast tables). Get rid of the hardwired convention that a type's array type is named exactly "_type", instead using a new column pg_type.typarray to provide the linkage. (It still will be named "_type", though, except in odd corner cases such as maximum-length type names.) Along the way, make tracking of owner and schema dependencies for types more uniform: a type directly created by the user has these dependencies, while a table rowtype or auto-generated array type does not have them, but depends on its parent object instead. David Fetter, Andrew Dunstan, Tom Lane Modified Files: -------------- pgsql/doc/src/sgml: array.sgml (r1.60 -> r1.61) (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/array.sgml.diff?r1=1.60&r2=1.61) catalogs.sgml (r2.150 -> r2.151) (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/catalogs.sgml.diff?r1=2.150&r2=2.151) syntax.sgml (r1.117 -> r1.118) (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/syntax.sgml.diff?r1=1.117&r2=1.118) pgsql/doc/src/sgml/ref: create_type.sgml (r1.69 -> r1.70) (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/ref/create_type.sgml.diff?r1=1.69&r2=1.70) pgsql/src/backend/catalog: README (r1.10 -> r1.11) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/README.diff?r1=1.10&r2=1.11) heap.c (r1.318 -> r1.319) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/heap.c.diff?r1=1.318&r2=1.319) pg_shdepend.c (r1.17 -> r1.18) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_shdepend.c.diff?r1=1.17&r2=1.18) pg_type.c (r1.111 -> r1.112) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_type.c.diff?r1=1.111&r2=1.112) pgsql/src/backend/commands: tablecmds.c (r1.219 -> r1.220) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/tablecmds.c.diff?r1=1.219&r2=1.220) typecmds.c (r1.101 -> r1.102) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/typecmds.c.diff?r1=1.101&r2=1.102) pgsql/src/backend/parser: parse_type.c (r1.89 -> r1.90) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_type.c.diff?r1=1.89&r2=1.90) pgsql/src/backend/utils/cache: lsyscache.c (r1.151 -> r1.152) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/lsyscache.c.diff?r1=1.151&r2=1.152) pgsql/src/bin/pg_dump: pg_dump.c (r1.467 -> r1.468) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/bin/pg_dump/pg_dump.c.diff?r1=1.467&r2=1.468) pg_dump.h (r1.134 -> r1.135) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/bin/pg_dump/pg_dump.h.diff?r1=1.134&r2=1.135) pgsql/src/include/catalog: catversion.h (r1.405 -> r1.406) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h.diff?r1=1.405&r2=1.406) pg_attribute.h (r1.130 -> r1.131) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_attribute.h.diff?r1=1.130&r2=1.131) pg_class.h (r1.100 -> r1.101) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_class.h.diff?r1=1.100&r2=1.101) pg_type.h (r1.182 -> r1.183) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_type.h.diff?r1=1.182&r2=1.183) pgsql/src/include/commands: typecmds.h (r1.18 -> r1.19) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/commands/typecmds.h.diff?r1=1.18&r2=1.19) pgsql/src/test/regress/expected: alter_table.out (r1.101 -> r1.102) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/alter_table.out.diff?r1=1.101&r2=1.102) oidjoins.out (r1.19 -> r1.20) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/oidjoins.out.diff?r1=1.19&r2=1.20) type_sanity.out (r1.29 -> r1.30) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/type_sanity.out.diff?r1=1.29&r2=1.30) pgsql/src/test/regress/sql: oidjoins.sql (r1.19 -> r1.20) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/oidjoins.sql.diff?r1=1.19&r2=1.20) type_sanity.sql (r1.29 -> r1.30) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/sql/type_sanity.sql.diff?r1=1.29&r2=1.30) pgsql/src/tools/findoidjoins: README (r1.3 -> r1.4) (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/tools/findoidjoins/README.diff?r1=1.3&r2=1.4)