Re: Are OIDs for pg_types constant?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Tyler Brock <tyler(dot)brock(at)gmail(dot)com>
Cc: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: Are OIDs for pg_types constant?
Date: 2022-04-20 15:23:59
Message-ID: 2830581.1650468239@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Tyler Brock <tyler(dot)brock(at)gmail(dot)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

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tyler Brock 2022-04-20 15:30:51 Re: Are OIDs for pg_types constant?
Previous Message Tyler Brock 2022-04-20 15:18:22 Are OIDs for pg_types constant?