RE: Index (primary key) corrupt?

Wim Rouquart <wim.rouquart@kbc.be>

From: Wim Rouquart <wim.rouquart@kbc.be>
To: Ron Johnson <ronljohnsonjr@gmail.com>, "pgsql-general@lists.postgresql.org" <pgsql-general@lists.postgresql.org>
Date: 2025-09-19T09:29:57Z
Lists: pgsql-general
Internal


Hello,

When doing a pg_dump of one of our databases one of the tables primary keys doesn’t get exported. Pg_dump just skips this index, without any warning whatsoever (verbose mode was used to doublecheck).

When doing a REINDEX the issue is fixed.

As this seems to me to be some form of index corruption, I tried using amcheck (bt_index_check and bt_index_parent_check) to verify for corruption but both resulted with no issues (the index is a btree).

I would expect the corruption to show up when using amcheck, am I hitting some kind of bug here?

>> Does this problem keep happening, or has it only happened once?

It is consistent on this database/index, haven’t noticed it anywhere else yet luckily. Seems to be a one-off.

Are there any other ways to doublecheck for corruption (without enabling checksum upfront)?

>> pg_checksums is available in PG 15.

It is indeed, so to test I enabled checksums, and did a checksum test, no errors, and yes, the file containing the index is mentioned in the checks…

This concerns a PostgreSQL version 15 btw.

>> Are you at the current patch level?

Yes.


Disclaimer <https://www.kbc.com/KBCmailDisclaimer>