On Thu, Jan 25, 2018 at 3:14 PM, Tsunakawa, Takayuki <tsunakawa.ta...@jp.fujitsu.com> wrote: > > FIX > ==================================== > > I have the following questions. Along which line should I proceed to fix the > problem? > > * Why does autovacuum launcher always choose only one database when that > database need vacuuming for XID wraparound? Shouldn't it also choose other > databases?
Yeah, I'd also like to fix this issue. This can be problem even in other case; there are two databases that require anti-wraparound vacuum, and one of them has a very large table that could take a long time to vacuum. In this case, if autovacuum chooses the database having big table first, another database would not be selected until an autovacuum worker completes vacuum on the large table. To deal with it, I think we can make autovacuum workers tell that it is no longer necessary to launch a new autovacuum worker on the database to autovacuum launcher before exit. For example, autovacuum worker reports both the total number of relations and the number of relations that require an anti-wraparound vacuum to the stats collector. Regards, -- Masahiko Sawada NIPPON TELEGRAPH AND TELEPHONE CORPORATION NTT Open Source Software Center