Re: Temporary tables prevent autovacuum, leading to XID wraparound
Masahiko Sawada <sawada.mshk@gmail.com>
From: Masahiko Sawada <sawada.mshk@gmail.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: "Tsunakawa, Takayuki" <tsunakawa.takay@jp.fujitsu.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2018-02-01T00:37:35Z
Lists: pgsql-hackers
On Thu, Feb 1, 2018 at 2:01 AM, Robert Haas <robertmhaas@gmail.com> wrote: > On Tue, Jan 30, 2018 at 7:04 PM, Tsunakawa, Takayuki > <tsunakawa.takay@jp.fujitsu.com> wrote: >> So a simple improvement would be to assign workers fairly to databases facing a wraparound risk, as Sawada-san suggested. > > Is that always an improvement, or does it make some cases better and > others worse? 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. Regards, -- Masahiko Sawada NIPPON TELEGRAPH AND TELEPHONE CORPORATION NTT Open Source Software Center
Commits
-
Clarify comment about assignment and reset of temp namespace ID in MyProc
- 9fc9933695af 11.0 landed
- 1339fcc89617 12.0 landed
-
Make autovacuum more aggressive to remove orphaned temp tables
- 943576bddcb5 11.0 landed
- 246a6c8f7b23 12.0 landed
-
Don't count background workers against a user's connection limit.
- 13752743bf70 9.6.2 cited