Re: Why does the OID jump by 3 when creating tables?

From: Ron <ronljohnsonjr(at)gmail(dot)com>
To: pgsql-general(at)lists(dot)postgresql(dot)org
Subject: Re: Why does the OID jump by 3 when creating tables?
Date: 2021-10-30 15:04:46
Message-ID: be8d2870-bc8f-394e-0737-aa73259af059@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 10/30/21 3:55 AM, Daniel Westermann (DWE) wrote:
> Hi all,
>
> as I could not find the reason in the source code, can someone tell me why the OID counter jumps by 3 between two create table statements?
>
> postgres=# create table t1 ( a int );
> CREATE TABLE
> postgres=# create table t2 ( a int );
> CREATE TABLE
> postgres=# select oid,relname from pg_class where relname in ('t1','t2');
> oid | relname
> -------+---------
> 16453 | t1
> 16456 | t2
> (2 rows)
>
> These seems not to happen with other objects, e.g. namespaces:
>
> postgres=# create schema a;
> CREATE SCHEMA
> postgres=# create schema b;
> CREATE SCHEMA
> postgres=# select oid,nspname from pg_namespace where nspname in ('a','b');
> oid | nspname
> -------+---------
> 16459 | a
> 16460 | b
> (2 rows)
>
> ... or indexes:
>
> postgres=# select oid,relname from pg_class where relname in ('i1','i2');
> oid | relname
> -------+---------
> 16461 | i1
> 16462 | i2
>

I'd run this, and see if the results answer the question:

select oid,relname, reltype from pg_class where oid between 16453 and 16455;

--
Angular momentum makes the world go 'round.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message SQL Padawan 2021-10-30 16:31:02 Settings for a new machine - some guidance sought.
Previous Message Daniel Westermann (DWE) 2021-10-30 10:20:55 Re: Why does the OID jump by 3 when creating tables?