Re: Removing special case OID generation

Поиск
Список
Период
Сортировка
От Robert Haas
Тема Re: Removing special case OID generation
Дата
Msg-id CA+TgmoYuG1gjEvFchz3aroubLZfioOCTTd3tyPmy_CVEW6JPnA@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Removing special case OID generation  (Marti Raudsepp <marti@juffo.org>)
Список pgsql-hackers
On Mon, Feb 13, 2012 at 8:51 AM, Marti Raudsepp <marti@juffo.org> wrote:
> On Mon, Feb 13, 2012 at 15:08, Robert Haas <robertmhaas@gmail.com> wrote:
>> Honestly, I think the biggest hassle of the OID code is not so much
>> the way they're generated as the way they're stored within heap
>> tuples.  I've wondered whether we should go through the system
>> catalogs and replace all of the hidden OID columns with a normal
>> column called "oid" of type OID
>
> Do we have a clear idea about what to do with user tables that are
> created WITH OIDS? Do we care about compatibility with that at all?

I think it would be fine to eventually drop support for user tables
with OIDs.  That hasn't been enabled by default for a very long time:

commit 7ce9b7c0d8c8dbefc04978765422f760dcf3788c
Author: Bruce Momjian <bruce@momjian.us>
Date:   Mon Dec 1 22:08:02 2003 +0000
   This patch adds a new GUC var, "default_with_oids", which follows the   proposal for eventually deprecating OIDs on
usertables that I posted   earlier to pgsql-hackers. pg_dump now always specifies WITH OIDS or   WITHOUT OIDS when
dumpinga table. The documentation has been updated. 
   Neil Conway

I think there's not much benefit to deprecating that feature as long
as we need system OID columns in the catalogs.  But if we got rid of
them there then I think we could drop support in userland, too.

> Do
> we generate this explicit "oid" column manually or do we just tell
> users to use a serial or global sequence instead?
>
> Personally I'd also like to see us get rid of the default_with_oids
> setting -- I assume the existence of that is the reason why pgAdmin
> and TOAD still generate table DDL with an explicit "WITH (OIDS=FALSE)"

That probably has as much to do with inertia as anything else.  I
agree that it's ugly.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Marti Raudsepp
Дата:
Сообщение: Re: Removing special case OID generation
Следующее
От: Robert Haas
Дата:
Сообщение: Re: Optimize referential integrity checks (todo item)