On Thu, Nov 7, 2013 at 10:56 AM, Antonin Houska <antonin.hou...@gmail.com> wrote: > catalog/catalog.c:GetNewRelFileNode() and its calls indicate that the > following change makes sense: > > > diff --git a/src/include/storage/relfilenode.h > b/src/include/storage/relfilenode.h > index 75f897f..7190974 100644 > --- a/src/include/storage/relfilenode.h > +++ b/src/include/storage/relfilenode.h > @@ -55,7 +55,7 @@ typedef enum ForkNumber > * relNode identifies the specific relation. relNode corresponds to > * pg_class.relfilenode (NOT pg_class.oid, because we need to be able > * to assign new physical files to relations in some situations). > - * Notice that relNode is only unique within a particular database. > + * Notice that relNode is only unique within a particular tablespace. > * > * Note: spcNode must be GLOBALTABLESPACE_OID if and only if dbNode is > * zero. We support shared relations only in the "global" tablespace. > > > // Antonin Houska (Tony)
Technically speaking, I think it's only guaranteed to be unique with a database-tablespace combination. In other words, the same OID can be reused as a relfilenode if *either* of those two values differs. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers