Re: Why hash OIDs? - Mailing list pgsql-hackers

From Thomas Munro
Subject Re: Why hash OIDs?
Date
Msg-id CAEepm=1yuCKJ9MFZzUjPcykjP6q9OqsjjO7pEmLiGezrmM1XMA@mail.gmail.com
Whole thread Raw
In response to Re: Why hash OIDs?  (Thomas Munro <thomas.munro@enterprisedb.com>)
Responses Re: Why hash OIDs?
List pgsql-hackers
On Wed, Aug 29, 2018 at 11:05 AM Thomas Munro
<thomas.munro@enterprisedb.com> wrote:
> On Wed, Aug 29, 2018 at 2:09 AM Robert Haas <robertmhaas@gmail.com> wrote:
> > rhaas=# create table a (x serial primary key);
> > CREATE TABLE
> > rhaas=# create table b (x serial primary key);
> > CREATE TABLE
> > rhaas=# select 'a'::regclass::oid, 'b'::regclass::oid;
> >   oid  |  oid
> > -------+-------
> >  16422 | 16430
> > (1 row)
> >
> > If you have a lot of tables like that, bad things are going to happen
> > to your hash table.
>
> Right.  I suppose that might happen accidentally when creating a lot
> of partitions.
>
> Advance the OID generator by some prime number after every CREATE TABLE?
>
> /me ducks

Erm, s/prime/random/.   Or use a different OID generator for each
catalogue so that attributes etc don't create gaps in pg_class OIDs.

-- 
Thomas Munro
http://www.enterprisedb.com


pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: Postmaster doesn't send SIGTERM to bgworker during fast shutdownwhen pmState == PM_STARTUP
Next
From: Tom Lane
Date:
Subject: Re: Why hash OIDs?