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

Re: wal_buffers = -1 and SIGHUP

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Bernd Helmle <mailings(at)oopsware(dot)de>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: wal_buffers = -1 and SIGHUP
Date: 2011-03-31 20:00:57
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-hackers
On Thu, Mar 31, 2011 at 8:38 AM, Bernd Helmle <mailings(at)oopsware(dot)de> wrote:
> This might be nitpicking (or i'm currently missing something), but i
> recognized that setting wal_buffers = -1 always triggers the following on
> reload, even if nothing to wal_buffers had changed:
> $ pg_ctl reload
> LOG:  received SIGHUP, reloading configuration files
> LOG:  parameter "wal_buffers" cannot be changed without restarting the
> server
> This only happens when you have wal_buffers set to -1.

This is a bug.  The root cause is that, on startup, we do this:

        if (xbuffers != XLOGbuffers)
                snprintf(buf, sizeof(buf), "%d", xbuffers);
                SetConfigOption("wal_buffers", buf, PGC_POSTMASTER,

I had intended to commit Greg's patch with a show hook and an assign
hook and the calculated value stored separately from the GUC variable,
which I believe would avoid this is a problem, but Tom thought this
way was better.  Unfortunately, my knowledge of the GUC machinery is
insufficient to think of a way to avoid it, other than the one Tom
already rejected.

Robert Haas
The Enterprise PostgreSQL Company


pgsql-hackers by date

Next:From: Dave PageDate: 2011-03-31 20:02:08
Subject: Re: Windows build issues
Previous:From: Andrew DunstanDate: 2011-03-31 20:00:43
Subject: Re: Windows build issues

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