Dealing with dangling index pointers - Mailing list pgsql-hackers

From Heikki Linnakangas
Subject Dealing with dangling index pointers
Date
Msg-id 469B7F46.50509@enterprisedb.com
Whole thread Raw
Responses Re: Dealing with dangling index pointers  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Dealing with dangling index pointers  (Hannu Krosing <hannu@skype.net>)
List pgsql-hackers
While looking at the HOT patch, I noticed that if there's an index tuple
pointing to a non-existing heap tuple, we just silently ignore it.

Such dangling index entries of course means that your database is
corrupt, but we ought to handle that better. In the worst case, the heap
slot is inserted to in the future, and then the bogus index entry points
to a wrong tuple.

ISTM we should print a warning suggesting a REINDEX, and kill the index
tuple. Killing tuples in the face of corruption is dangerous, but in
this case I think it's the right thing to do. We could also just emit
the warning, but that could fill the logs quickly if the index tuple is
accessed frequently.

--  Heikki Linnakangas EnterpriseDB   http://www.enterprisedb.com


pgsql-hackers by date:

Previous
From: Andrew Dunstan
Date:
Subject: Re: write_pipe_chunks patch messes up early error message output
Next
From: Tom Lane
Date:
Subject: Re: write_pipe_chunks patch messes up early error message output