Re: FSM Corruption (was: Could not read block at end of the relation)
Peter Geoghegan <pg@bowt.ie>
From: Peter Geoghegan <pg@bowt.ie>
To: Noah Misch <noah@leadboat.com>
Cc: Ronan Dunklau <ronan.dunklau@aiven.io>,
Michael Paquier <michael@paquier.xyz>, pgsql-bugs <pgsql-bugs@lists.postgresql.org>
Date: 2024-04-11T16:01:09Z
Lists: pgsql-bugs
On Wed, Mar 13, 2024 at 12:55 PM Noah Misch <noah@leadboat.com> wrote: > That's a reasonable thing to worry about. We could do wrong by trying too > hard to use an FSM slot, and we could do wrong by not trying hard enough. Although it's not related to the problem you're working on, it seems like a good opportunity to bring up a concern about the FSM that I don't believe was discussed at any point in the past few years: I wonder if the way that fsm_search_avail() sometimes updates fsmpage->fp_next_slot with only a shared lock on the page could cause problems. At the very least, it's weird that we allow it. -- Peter Geoghegan
Commits
-
freespace: Don't return blocks past the end of the main fork.
- 08059fc049ff 14.12 landed
- 7c490a18b75b 15.7 landed
- 4e62ba21a921 16.3 landed
- 935829743151 17.0 landed
-
Fix WAL-logging of FSM and VM truncation.
- 917dc7d2393c 10.0 cited
-
Extend relations multiple blocks at a time to improve scalability.
- 719c84c1be51 9.6.0 cited