> I don't know old PostgreSQL at all.
> Only one thing I could suppose is the following.
>
> Before MVCC it was unnecessary to read dirty(uncommited) tuples
> to check uniqueness because a table level exclusive lock was acquired
> automatically. As for user tuples,the consistency was perserved because
> the lock was held until transaction end. As for system tuples,the
> consistency
> could be broken if the lock was a short term lock.
>
> After MVCC,dirty(uncommitted) tuples are taken into account to check
> uniqueness and any lock is no longer needed.
>
> AFAIK,there are no other means to check(lock ?) (logically) non-existent
> rows now(Referencial Integrity would provide the second one).
> So probably PostgreSQL couldn't guarantee the uniquness of system
> tuples in many cases.
>
> Anyway,I want to change the implementation of mdcreate() to reuse
> existent files but the uniqueness of table name is preserved by the
> current implementation narrowly.
>
> First of all,I would change pg_type,pg_class.
> It's OK ?
Sure.
-- Bruce Momjian | http://www.op.net/~candle maillist@candle.pha.pa.us | (610)
853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill,
Pennsylvania19026