Re: Gaps in PK sequence numbers - Mailing list pgsql-general

From Christophe Pettus
Subject Re: Gaps in PK sequence numbers
Date
Msg-id DB68A3C3-FCF6-4815-9C5C-A77310B66474@thebuild.com
Whole thread Raw
In response to Gaps in PK sequence numbers  (Rich Shepard <rshepard@appl-ecosys.com>)
Responses Re: Gaps in PK sequence numbers [RESOLVED]
List pgsql-general

> On Jun 10, 2024, at 15:57, Rich Shepard <rshepard@appl-ecosys.com> wrote:
> When I tried inserting new rows in the companies table psql told me that PK
> value 2310 already existed. Selecting max(PK) returned 2341. When entering
> multiple new rows is there a way to ignore gaps?

Strictly speaking, the sequence underlying nextval() has no idea what primary keys are or are not in use.  It's just a
transaction-ignoringcounter that increases with each nextval() call.  The only reason that you'd get duplicate key
errorsin this case are: 

1. The sequence was reset to a different, lower value.
2. Rows were inserted that didn't use the sequence to select a primary key.





pgsql-general by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: Gaps in PK sequence numbers
Next
From: Tom Lane
Date:
Subject: Re: libpq v17 PQsocketPoll timeout is not granular enough