Re: The ability of postgres to determine loss of files of the main fork
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Aleksander Alekseev <aleksander@tigerdata.com>
Cc: Frits Hoogland <frits.hoogland@gmail.com>,
pgsql-hackers@lists.postgresql.org
Date: 2025-09-30T16:41:29Z
Lists: pgsql-hackers
Aleksander Alekseev <aleksander@tigerdata.com> writes: >> Therefore, I would like to request an enhancement: add an option to >> verify_heapam() that causes the primary key index to be scanned and makes >> sure that all line pointers in the index point to existing tuples. > ... IMO there is little value in adding a check for the existence of > the segments for a single table. And the *real* check will not differ > much from something like SELECT * FROM my_table, or from making a > complete backup of the database. As Frits mentioned, neither of those actions will really notice if a table has been truncated via loss of a segment. However, I think the requested functionality already exists via contrib/amcheck (see the heapallindexed option). The user does have to make a decision which index to check with, but I think that'd be required anyway --- as you say, there isn't necessarily a primary key. regards, tom lane