Re: Big 7.1 open items
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: "Hiroshi Inoue" <Inoue@tpf.co.jp>
Cc: "Bruce Momjian" <pgman@candle.pha.pa.us>, "Mikheev, Vadim" <vmikheev@SECTORBASE.COM>, "'Peter Eisentraut'" <peter_e@gmx.net>, "Thomas Lockhart" <lockhart@alumni.caltech.edu>, "Jan Wieck" <JanWieck@Yahoo.com>, "PostgreSQL-development" <pgsql-hackers@postgresql.org>, "Ross J. Reedstrom" <reedstrm@rice.edu>
Date: 2000-06-28T17:39:32Z
Lists: pgsql-hackers
"Hiroshi Inoue" <Inoue@tpf.co.jp> writes: > Why do we have to have system tables per *database* ? > Is there anything wrong with global system tables ? > And how about adding dbid to pg_class,pg_proc etc ? We could, but I think I'd vote against it on two grounds: 1. Reliability. If something corrupts pg_class, do you want to lose your whole installation, or just one database? 2. Increased locking overhead/loss of concurrency. Currently, there is very little lock contention between backends running in different databases. A shared pg_class will be a single point of locking (as well as a single point of failure) for the whole installation. It would solve the DROP DATABASE problem kind of nicely, but really it'd just be downgrading DROP DATABASE to a DROP SCHEMA operation... regards, tom lane