Re: Why is autovacuum_freeze_max_age a postmaster setting?

From: Andres Freund <andres(at)2ndquadrant(dot)com>
To: Jim Nasby <jim(at)nasby(dot)net>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Why is autovacuum_freeze_max_age a postmaster setting?
Date: 2014-03-21 21:55:45
Message-ID: 20140321215545.GE17111@alap3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

On 2014-03-21 16:49:53 -0500, Jim Nasby wrote:
> Why do we require a restart to change autovacuum_freeze_max_age? Can’t
> we respawn the autovac workers to pick up the setting? (Or just pass
> the HUP down to them?)

It's more complex than notifying the workers. There's limits in shared
memory that's computed based on it. Check
varsup.c:SetTransactionIdLimit(). It's not entirely trivial to trigger
recomputation of that value via the GUC machinery in a sensible way...

But yes, I'd wished it were PGC_SIGHUP before as well.

I guess we could delegate responsibility of updating the shared memory
value to the autovac launcher?

Greetings,

Andres Freund

--
Andres Freund http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2014-03-21 22:01:41 Re: Memory ordering issue in LWLockRelease, WakeupWaiters, WALInsertSlotRelease
Previous Message Tom Lane 2014-03-21 21:54:08 Re: psql blows up on BOM character sequence