pgsql-server: Tablespaces.

Started by Nonameover 21 years ago7 messages
#1Noname
tgl@svr1.postgresql.org

Log Message:
-----------
Tablespaces. Alternate database locations are dead, long live tablespaces.

There are various things left to do: contrib dbsize and oid2name modules
need work, and so does the documentation. Also someone should think about
COMMENT ON TABLESPACE and maybe RENAME TABLESPACE. Also initlocation is
dead, it just doesn't know it yet.

Gavin Sherry and Tom Lane.

Modified Files:
--------------
pgsql-server/doc/src/sgml:
catalogs.sgml (r2.87 -> r2.88)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/catalogs.sgml.diff?r1=2.87&r2=2.88)
manage-ag.sgml (r2.29 -> r2.30)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/manage-ag.sgml.diff?r1=2.29&r2=2.30)
reference.sgml (r1.47 -> r1.48)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/reference.sgml.diff?r1=1.47&r2=1.48)
pgsql-server/doc/src/sgml/ref:
allfiles.sgml (r1.56 -> r1.57)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/ref/allfiles.sgml.diff?r1=1.56&r2=1.57)
create_database.sgml (r1.38 -> r1.39)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/ref/create_database.sgml.diff?r1=1.38&r2=1.39)
create_index.sgml (r1.47 -> r1.48)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/ref/create_index.sgml.diff?r1=1.47&r2=1.48)
create_schema.sgml (r1.11 -> r1.12)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/ref/create_schema.sgml.diff?r1=1.11&r2=1.12)
create_sequence.sgml (r1.39 -> r1.40)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/ref/create_sequence.sgml.diff?r1=1.39&r2=1.40)
create_table.sgml (r1.81 -> r1.82)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/ref/create_table.sgml.diff?r1=1.81&r2=1.82)
grant.sgml (r1.40 -> r1.41)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/ref/grant.sgml.diff?r1=1.40&r2=1.41)
psql-ref.sgml (r1.115 -> r1.116)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/ref/psql-ref.sgml.diff?r1=1.115&r2=1.116)
revoke.sgml (r1.30 -> r1.31)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/ref/revoke.sgml.diff?r1=1.30&r2=1.31)
pgsql-server/src/backend/access/heap:
heapam.c (r1.168 -> r1.169)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/access/heap/heapam.c.diff?r1=1.168&r2=1.169)
pgsql-server/src/backend/access/nbtree:
nbtxlog.c (r1.13 -> r1.14)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/access/nbtree/nbtxlog.c.diff?r1=1.13&r2=1.14)
pgsql-server/src/backend/access/transam:
xlogutils.c (r1.30 -> r1.31)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/access/transam/xlogutils.c.diff?r1=1.30&r2=1.31)
pgsql-server/src/backend/bootstrap:
bootparse.y (r1.69 -> r1.70)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/bootstrap/bootparse.y.diff?r1=1.69&r2=1.70)
pgsql-server/src/backend/catalog:
Makefile (r1.50 -> r1.51)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/catalog/Makefile.diff?r1=1.50&r2=1.51)
aclchk.c (r1.103 -> r1.104)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/catalog/aclchk.c.diff?r1=1.103&r2=1.104)
catalog.c (r1.51 -> r1.52)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/catalog/catalog.c.diff?r1=1.51&r2=1.52)
heap.c (r1.270 -> r1.271)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/catalog/heap.c.diff?r1=1.270&r2=1.271)
index.c (r1.233 -> r1.234)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/catalog/index.c.diff?r1=1.233&r2=1.234)
namespace.c (r1.66 -> r1.67)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/catalog/namespace.c.diff?r1=1.66&r2=1.67)
pg_namespace.c (r1.8 -> r1.9)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/catalog/pg_namespace.c.diff?r1=1.8&r2=1.9)
pgsql-server/src/backend/commands:
Makefile (r1.33 -> r1.34)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/Makefile.diff?r1=1.33&r2=1.34)
cluster.c (r1.125 -> r1.126)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/cluster.c.diff?r1=1.125&r2=1.126)
dbcommands.c (r1.135 -> r1.136)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/dbcommands.c.diff?r1=1.135&r2=1.136)
indexcmds.c (r1.121 -> r1.122)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/indexcmds.c.diff?r1=1.121&r2=1.122)
schemacmds.c (r1.18 -> r1.19)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/schemacmds.c.diff?r1=1.18&r2=1.19)
sequence.c (r1.111 -> r1.112)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/sequence.c.diff?r1=1.111&r2=1.112)
tablecmds.c (r1.115 -> r1.116)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/tablecmds.c.diff?r1=1.115&r2=1.116)
typecmds.c (r1.59 -> r1.60)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/typecmds.c.diff?r1=1.59&r2=1.60)
view.c (r1.82 -> r1.83)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/view.c.diff?r1=1.82&r2=1.83)
pgsql-server/src/backend/executor:
execMain.c (r1.233 -> r1.234)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/executor/execMain.c.diff?r1=1.233&r2=1.234)
pgsql-server/src/backend/nodes:
copyfuncs.c (r1.285 -> r1.286)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/nodes/copyfuncs.c.diff?r1=1.285&r2=1.286)
equalfuncs.c (r1.224 -> r1.225)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/nodes/equalfuncs.c.diff?r1=1.224&r2=1.225)
outfuncs.c (r1.239 -> r1.240)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/nodes/outfuncs.c.diff?r1=1.239&r2=1.240)
pgsql-server/src/backend/parser:
analyze.c (r1.305 -> r1.306)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/parser/analyze.c.diff?r1=1.305&r2=1.306)
gram.y (r2.461 -> r2.462)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/parser/gram.y.diff?r1=2.461&r2=2.462)
keywords.c (r1.149 -> r1.150)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/parser/keywords.c.diff?r1=1.149&r2=1.150)
pgsql-server/src/backend/storage/buffer:
bufmgr.c (r1.170 -> r1.171)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/storage/buffer/bufmgr.c.diff?r1=1.170&r2=1.171)
localbuf.c (r1.55 -> r1.56)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/storage/buffer/localbuf.c.diff?r1=1.55&r2=1.56)
pgsql-server/src/backend/storage/freespace:
freespace.c (r1.31 -> r1.32)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/storage/freespace/freespace.c.diff?r1=1.31&r2=1.32)
pgsql-server/src/backend/storage/smgr:
md.c (r1.107 -> r1.108)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/storage/smgr/md.c.diff?r1=1.107&r2=1.108)
smgr.c (r1.73 -> r1.74)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/storage/smgr/smgr.c.diff?r1=1.73&r2=1.74)
pgsql-server/src/backend/tcop:
utility.c (r1.218 -> r1.219)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/tcop/utility.c.diff?r1=1.218&r2=1.219)
pgsql-server/src/backend/utils/adt:
acl.c (r1.105 -> r1.106)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/utils/adt/acl.c.diff?r1=1.105&r2=1.106)
ruleutils.c (r1.172 -> r1.173)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/utils/adt/ruleutils.c.diff?r1=1.172&r2=1.173)
pgsql-server/src/backend/utils/cache:
inval.c (r1.61 -> r1.62)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/utils/cache/inval.c.diff?r1=1.61&r2=1.62)
lsyscache.c (r1.113 -> r1.114)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/utils/cache/lsyscache.c.diff?r1=1.113&r2=1.114)
relcache.c (r1.204 -> r1.205)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/utils/cache/relcache.c.diff?r1=1.204&r2=1.205)
pgsql-server/src/backend/utils/init:
globals.c (r1.90 -> r1.91)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/utils/init/globals.c.diff?r1=1.90&r2=1.91)
miscinit.c (r1.126 -> r1.127)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/utils/init/miscinit.c.diff?r1=1.126&r2=1.127)
postinit.c (r1.133 -> r1.134)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/utils/init/postinit.c.diff?r1=1.133&r2=1.134)
pgsql-server/src/backend/utils/misc:
database.c (r1.60 -> r1.61)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/utils/misc/database.c.diff?r1=1.60&r2=1.61)
pgsql-server/src/bin/initdb:
initdb.c (r1.37 -> r1.38)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/bin/initdb/initdb.c.diff?r1=1.37&r2=1.38)
pgsql-server/src/bin/pg_dump:
dumputils.c (r1.12 -> r1.13)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/bin/pg_dump/dumputils.c.diff?r1=1.12&r2=1.13)
pg_dump.c (r1.374 -> r1.375)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/bin/pg_dump/pg_dump.c.diff?r1=1.374&r2=1.375)
pg_dump.h (r1.108 -> r1.109)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/bin/pg_dump/pg_dump.h.diff?r1=1.108&r2=1.109)
pg_dumpall.c (r1.41 -> r1.42)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/bin/pg_dump/pg_dumpall.c.diff?r1=1.41&r2=1.42)
pgsql-server/src/bin/psql:
command.c (r1.116 -> r1.117)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/bin/psql/command.c.diff?r1=1.116&r2=1.117)
describe.c (r1.98 -> r1.99)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/bin/psql/describe.c.diff?r1=1.98&r2=1.99)
describe.h (r1.23 -> r1.24)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/bin/psql/describe.h.diff?r1=1.23&r2=1.24)
help.c (r1.87 -> r1.88)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/bin/psql/help.c.diff?r1=1.87&r2=1.88)
pgsql-server/src/include/catalog:
catalog.h (r1.27 -> r1.28)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/catalog.h.diff?r1=1.27&r2=1.28)
catname.h (r1.31 -> r1.32)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/catname.h.diff?r1=1.31&r2=1.32)
catversion.h (r1.236 -> r1.237)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/catversion.h.diff?r1=1.236&r2=1.237)
heap.h (r1.66 -> r1.67)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/heap.h.diff?r1=1.66&r2=1.67)
index.h (r1.56 -> r1.57)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/index.h.diff?r1=1.56&r2=1.57)
indexing.h (r1.81 -> r1.82)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/indexing.h.diff?r1=1.81&r2=1.82)
pg_attribute.h (r1.109 -> r1.110)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/pg_attribute.h.diff?r1=1.109&r2=1.110)
pg_class.h (r1.81 -> r1.82)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/pg_class.h.diff?r1=1.81&r2=1.82)
pg_database.h (r1.31 -> r1.32)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/pg_database.h.diff?r1=1.31&r2=1.32)
pg_namespace.h (r1.11 -> r1.12)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/pg_namespace.h.diff?r1=1.11&r2=1.12)
pg_type.h (r1.153 -> r1.154)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/pg_type.h.diff?r1=1.153&r2=1.154)
pgsql-server/src/include/commands:
defrem.h (r1.57 -> r1.58)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/commands/defrem.h.diff?r1=1.57&r2=1.58)
pgsql-server/src/include:
miscadmin.h (r1.162 -> r1.163)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/miscadmin.h.diff?r1=1.162&r2=1.163)
pgsql-server/src/include/nodes:
nodes.h (r1.157 -> r1.158)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/nodes/nodes.h.diff?r1=1.157&r2=1.158)
parsenodes.h (r1.258 -> r1.259)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/nodes/parsenodes.h.diff?r1=1.258&r2=1.259)
pgsql-server/src/include/storage:
buf_internals.h (r1.70 -> r1.71)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/storage/buf_internals.h.diff?r1=1.70&r2=1.71)
relfilenode.h (r1.8 -> r1.9)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/storage/relfilenode.h.diff?r1=1.8&r2=1.9)
pgsql-server/src/include/utils:
acl.h (r1.70 -> r1.71)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/utils/acl.h.diff?r1=1.70&r2=1.71)
lsyscache.h (r1.87 -> r1.88)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/utils/lsyscache.h.diff?r1=1.87&r2=1.88)
relcache.h (r1.39 -> r1.40)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/utils/relcache.h.diff?r1=1.39&r2=1.40)
pgsql-server/src/test/regress:
GNUmakefile (r1.46 -> r1.47)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/GNUmakefile.diff?r1=1.46&r2=1.47)
parallel_schedule (r1.26 -> r1.27)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/parallel_schedule.diff?r1=1.26&r2=1.27)
serial_schedule (r1.25 -> r1.26)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/serial_schedule.diff?r1=1.25&r2=1.26)
pgsql-server/src/test/regress/expected:
sanity_check.out (r1.23 -> r1.24)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/expected/sanity_check.out.diff?r1=1.23&r2=1.24)

Added Files:
-----------
pgsql-server/doc/src/sgml/ref:
create_tablespace.sgml (r1.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/ref/create_tablespace.sgml?rev=1.1&content-type=text/x-cvsweb-markup)
drop_tablespace.sgml (r1.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/doc/src/sgml/ref/drop_tablespace.sgml?rev=1.1&content-type=text/x-cvsweb-markup)
pgsql-server/src/backend/commands:
tablespace.c (r1.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/tablespace.c?rev=1.1&content-type=text/x-cvsweb-markup)
pgsql-server/src/include/catalog:
pg_tablespace.h (r1.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/catalog/pg_tablespace.h?rev=1.1&content-type=text/x-cvsweb-markup)
pgsql-server/src/include/commands:
tablespace.h (r1.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/commands/tablespace.h?rev=1.1&content-type=text/x-cvsweb-markup)
pgsql-server/src/test/regress/input:
tablespace.source (r1.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/input/tablespace.source?rev=1.1&content-type=text/x-cvsweb-markup)
pgsql-server/src/test/regress/output:
tablespace.source (r1.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/output/tablespace.source?rev=1.1&content-type=text/x-cvsweb-markup)

#2Christopher Kings-Lynne
chriskl@familyhealth.com.au
In reply to: Noname (#1)
Re: pgsql-server: Tablespaces.

(Moved to -hackers)

Log Message:
-----------
Tablespaces. Alternate database locations are dead, long live tablespaces.

Sweet :)

There are various things left to do: contrib dbsize and oid2name modules
need work, and so does the documentation. Also someone should think about
COMMENT ON TABLESPACE and maybe RENAME TABLESPACE. Also initlocation is
dead, it just doesn't know it yet.

Comment on TABLESPACE is impossible, no? Tablespaces are a global
relation and pg_description isn't.

I'll do RENAME and OWNER TO for tablespaces with this patch I'm working
on atm if people like.

Chris

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: Christopher Kings-Lynne (#2)
Re: pgsql-server: Tablespaces.

Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes:

Comment on TABLESPACE is impossible, no? Tablespaces are a global
relation and pg_description isn't.

Well, it has the same issues as COMMENT ON DATABASE, which we support,
though crudely.

Perhaps we should think about creating a shared version of
pg_description so we could have more reasonable support for comments
on shared objects. I'm not in a hurry for this but it would be a
reasonable TODO item.

regards, tom lane

#4Andreas Pflug
pgadmin@pse-consulting.de
In reply to: Tom Lane (#3)
Re: pgsql-server: Tablespaces.

Tom Lane wrote:

Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes:

Comment on TABLESPACE is impossible, no? Tablespaces are a global
relation and pg_description isn't.

Well, it has the same issues as COMMENT ON DATABASE, which we support,
though crudely.

Perhaps we should think about creating a shared version of
pg_description so we could have more reasonable support for comments
on shared objects. I'm not in a hurry for this but it would be a
reasonable TODO item.

There are more sharing issues with tablespaces (which are already
supported in pgadmin3, btw :-)
To drop a tablespace, it must be empty, but it can be quite painful to
find out which objects are populating it. Currently, every database has
to be queried for pg_class.reltablespace=<mytablespaceoid>. I'd love to
show tablespace dependency information, which would require some sort of
global pg_namespace, pg_class and pg_index.

Any thoughts about this?

Regards,
Andreas

#5Christopher Kings-Lynne
chriskl@familyhealth.com.au
In reply to: Tom Lane (#3)
Re: pgsql-server: Tablespaces.

Well, it has the same issues as COMMENT ON DATABASE, which we support,
though crudely.

Perhaps we should think about creating a shared version of
pg_description so we could have more reasonable support for comments
on shared objects. I'm not in a hurry for this but it would be a
reasonable TODO item.

Just add a comment text column to the databases, users, groups and
tablespaces tables. Then special case them in obj_description.

Chris

#6Tom Lane
tgl@sss.pgh.pa.us
In reply to: Christopher Kings-Lynne (#5)
Re: pgsql-server: Tablespaces.

Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes:

Perhaps we should think about creating a shared version of
pg_description so we could have more reasonable support for comments
on shared objects. I'm not in a hurry for this but it would be a
reasonable TODO item.

Just add a comment text column to the databases, users, groups and
tablespaces tables. Then special case them in obj_description.

Hm ... seems like that requires more special cases, not fewer.
What I was imagining was the current database-local pg_description plus
a single shared table pg_shared_description. When you add more kinds of
shared objects (SQL roles maybe?) obj_description doesn't need to
change...

regards, tom lane

#7Christopher Kings-Lynne
chriskl@familyhealth.com.au
In reply to: Tom Lane (#6)
Re: pgsql-server: Tablespaces.

Hm ... seems like that requires more special cases, not fewer.
What I was imagining was the current database-local pg_description plus
a single shared table pg_shared_description. When you add more kinds of
shared objects (SQL roles maybe?) obj_description doesn't need to
change...

Oh yeah, that's a much better idea :) Didn't think of that :)

Chris