Article may be outdated

This article is 5 days old. Some details may have changed since publication.

Hacker News·4 min read·hard

Postgres recovery_prefetch can cause outages

P
plaur782
Postgres recovery_prefetch can cause outages
✦AI Summary

A technical analysis reveals that the 'recovery_prefetch' feature in PostgreSQL can cause production outages by converting large sequential I/O operations into inefficient random reads. The author highlights that this issue was previously overlooked despite early warnings from the developer community.

Why it matters

This insight is critical for database administrators and engineers managing high-availability PostgreSQL clusters to prevent unexpected downtime.

✦Dive DeeperCreate a free account to unlock

Another story of something I saw in the field which surprised me. Turns out recovery_prefetch can cause outages.

Something which has been happening quietly in the background all the time, but we didn’t notice until we looked close enough to see it.

After a lot of work I discovered this was partly a case where someone had dropped an email to the postgres hackers list years ago “hey what about this” and everyone thought “nah it can’t be that bad” … and now here we are seeing production outages!

Exhibit A: Feb 2021, while the feature was being developed, a year and a half before it shipped, Stephen Frost

https://www.postgresql.org/message-id/20210214231815.GO27507@tamriel.snowman.net

Exhibit B: Mar 2025, clear report from the field, Michael Zhilin (Postgres Pro)

https://www.postgresql.org/message-id/9bdb428a-fc8e-4801-8fff-1ad0bc6fa76b%40postgrespro.ru

Both of these emails were on the right track, but didn’t quite get the complete picture yet.

Continue reading on Headlinne

Create a free account to read the full article.

Read full article →
technologybusiness
✦

Get smarter about the news

Sign up free for a feed built around what you actually care about, Dive Deeper research on any story, and the full text of every article.

Create free account

Already have an account? Sign in