* Heikki Linnakangas wrote:
> The current situation is that if you run out of disk space while writing
> WAL, you get a PANIC, and the server shuts down. That's awful. We can
> So we need to somehow stop new WAL insertions from happening, before
> it's too late.
> A naive idea is to check if there's enough preallocated WAL space, just
> before inserting the WAL record. However, it's too late to check that in
There is a database engine, Microsoft's "Jet Blue" aka the Extensible
Storage Engine, that just keeps some preallocated log files around,
specifically so it can get consistent and halt cleanly if it runs out of
disk space.
In other words, the idea is not to check over and over again that there
is enough already-reserved WAL space, but to make sure there always is
by having a preallocated segment that is never used outside a disk space
emergency.
--
Christian