Re: Are OIDs for pg_types constant? - Mailing list pgsql-hackers

From Tyler Brock
Subject Re: Are OIDs for pg_types constant?
Date
Msg-id CACr_h8RVdQpniH7aNXMeRFB4beXM_uHw+6unxHiXQWPsbo8T5g@mail.gmail.com
Whole thread Raw
In response to Re: Are OIDs for pg_types constant?  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Thank you Tom, this is exactly what I was looking for.

-Tyler


On Apr 20, 2022 at 11:23:59 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Tyler Brock <tyler.brock@gmail.com> writes:
I am writing a program that behaves like a Postgres backend and can see
that if I select oid from pg_type that the type old’s could be returned in
the Row Description message for the field’s data type and that seems to
work.
However, I didn’t read anywhere that these are guaranteed to be
constant/stable so I’d like to know if this is the case. For example: is
the old for pg_type bool = 16 on every instance of Postgres?

Hand-assigned OIDs (those below 10000) are stable in released versions.
Those above 10K might vary across installations or PG versions.  You
might find it interesting to read

https://www.postgresql.org/docs/current/system-catalog-initial-data.html#SYSTEM-CATALOG-OID-ASSIGNMENT

Also does there exist any documentation decoding what the pg_type fields
all mean?

https://www.postgresql.org/docs/current/catalog-pg-type.html

regards, tom lane

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Are OIDs for pg_types constant?
Next
From: Robert Haas
Date:
Subject: Re: pg14 psql broke \d datname.nspname.relname