Magnus Hagander wrote:
> I've just applied the attached file to the walwriter, to solve a
> case when it keeps handles around to old xlog segments, preventing
> them from actually being removed, and as such also causing alerts
> in some monitoring systems.
Thanks! I wasted some time on these a while back; I'm sure this will
save others that kind of bother.
> The way to provoke the problem is:
The way I ran into it was to have a web application which only ran
read-only transactions. Sooner or later it would need to write a
page from the buffer to make space to read a new page, and then it
would forever be holding a WAL file open, even after it was deleted.
Previous thread on the topic starts here:
http://archives.postgresql.org/pgsql-hackers/2009-11/msg01754.php
continuing here:
http://archives.postgresql.org/pgsql-hackers/2009-12/msg00060.php
Resulting in a TODO listed with this description:
Close deleted WAL files held open in *nix by long-lived read-only
backends
-Kevin