> > Well, with above proposal, drop database should be as simple. It's just that
> > it would be more than one `rm -rf`rather than just one.
>
> Right, there would be potentially one per tablespace. The key point
> here is that the tablespace definitions are known cluster-wide, so a
> "DROP DATABASE x" command running in database y would still be able
> to figure out which subdirectories it needs to zap.
It sounds like you envision tablespaces (or at least the default tablespace)
as being above databases in some contexts. Reducing other tablespaces
to mere subdirectories under the 'base' directory for a database sounds
like a practical implementation measure.
I presume that the 'global' directory is for stuff that is not specific
to any one database within a database cluster. If so, there is an
inconsistency in the current directory structure in that SOME global
information is in the main /usr/local/pgsql/data directory (or equivalent)
while other global information is in the global subdirectory.
Being able to zap a database with one or more 'rm -rf' commands assumes
that there will be files from just ONE database permitted in any given
tablespace, and ONLY files from that database. The former is probably
a good thing to require and enforce, the latter is unenforcable but
probably still advisable.
Is this doable within the time frame for the 7.4 feature freeze?
--
Mike Nolan