Re: Temporary tables prevent autovacuum, leading to XID wraparound

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>
Cc: "Tsunakawa, Takayuki" <tsunakawa(dot)takay(at)jp(dot)fujitsu(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Temporary tables prevent autovacuum, leading to XID wraparound
Date: 2018-02-01 15:31:40
Message-ID: CA+TgmobNg9VzSR7GFKMib_2wOb7pyQY0m+yeo92JcfuC146UDw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Jan 31, 2018 at 7:37 PM, Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> wrote:
> I think the idea would not be an improvement, but just change the
> policy. The current launcher's policy is "let's launch a new worker as
> much as possible on the database that is at risk of wraparound most".
> The idea I suggested makes the cases mentioned on this thread better
> while perhaps making other cases worse.
>
> To improve while keeping the current policy, we might want to use the
> first idea I proposed. That is, we don't launch a new worker on a
> database impending wraparound if the last table of the database is
> being vacuumed. But it needs to share new information such as what
> tables exist in each database and which tables already have worker. It
> might be overkill in order to deal with only such a corner case
> though.

Something like that might work, but I think it needs more thought.
Maybe, for each database currently being processed by at least 1
worker, advertise in shared memory the oldest XID that isn't already
being vacuumed by some AV worker; when considering which database is
at greatest risk of wraparound, if that value is available, use it
instead of the database's datfrozenxid. Then when all tables that
make that database riskier than some other database already have
workers, some other database can get a chance.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2018-02-01 15:39:33 Re: Wait for parallel workers to attach
Previous Message Simon Riggs 2018-02-01 15:21:10 Re: [HACKERS] MERGE SQL Statement for PG11