Skip site navigation (1) Skip section navigation (2)

Re: Notify system doesn't recover from "No space" error

From: Christoph Berg <christoph(dot)berg(at)credativ(dot)de>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Kevin Grittner <Kevin(dot)Grittner(at)wicourts(dot)gov>,pgsql-hackers(at)postgresql(dot)org, Joachim Wieland <joe(at)mcknight(dot)de>
Subject: Re: Notify system doesn't recover from "No space" error
Date: 2012-07-02 15:55:38
Message-ID: 20120702155538.GG8539@msgid.df7cb.de (view raw or flat)
Thread:
Lists: pgsql-hackers
Re: Tom Lane 2012-06-29 <8308(dot)1340933751(at)sss(dot)pgh(dot)pa(dot)us>
> in async.c that would try to create the missing page.  This error will
> persist until the server is restarted (thus resetting the state of
> pg_notify), even if the underlying disk-full condition is cleared.

Thanks for digging into this and providing a patch. I've applied it to
9.1.4-2 here, and now the server recovers more gracefully from the
error: (sorry for the German locale, the error is ENOSPC)

2012-07-02 17:45:59 CEST FEHLER:  konnte auf den Status von Transaktion 0 nicht zugreifen
2012-07-02 17:45:59 CEST DETAIL:  Konnte nicht in Datei »pg_notify/0000« bei Position 32768 schreiben: Auf dem Gerät ist kein Speicherplatz mehr verfügbar.
2012-07-02 17:45:59 CEST ANWEISUNG:  commit

A subsequent "notify foobar" command did succeed after clearing the
disk space.

What is still puzzling me is that the customer is repeatedly reporting
these issues, even after rebooting the system. I am not 100% sure at
which point the disk full situation was resolved, but at least it
sounds like that problem would reappear after restarts. I will need to
get more detailed reports on the order of events there to make sure.

Christoph
-- 
cb(at)df7cb(dot)de | http://www.df7cb.de/

In response to

Responses

pgsql-hackers by date

Next:From: Tom LaneDate: 2012-07-02 16:03:55
Subject: Re: Notify system doesn't recover from "No space" error
Previous:From: David FetterDate: 2012-07-02 15:49:05
Subject: Re: [COMMITTERS] pgsql: Make walsender more responsive.

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group