Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru
От
Andres Freund
Тема
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru
Дата
Msg-id
20180924182934.rpl3lkoisy5o2tx4@alap3.anarazel.de
Ответ на
Список
Дерево обсуждения
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru "Nasby, Jim" <nasbyj@amazon.com>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Andres Freund <andres@anarazel.de>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru "Nasby, Jim" <nasbyj@amazon.com>
Re: pgsql: Improve autovacuum logging for aggressive and anti-wraparound ru Sergei Kornilov <sk@zsrv.org>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Alvaro Herrera <alvherre@2ndquadrant.com>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Masahiko Sawada <sawada.mshk@gmail.com>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Masahiko Sawada <sawada.mshk@gmail.com>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive and anti-wraparound ru Tom Lane <tgl@sss.pgh.pa.us>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Masahiko Sawada <sawada.mshk@gmail.com>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Andrew Dunstan <andrew.dunstan@2ndquadrant.com>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Andres Freund <andres@anarazel.de>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Andrew Dunstan <andrew.dunstan@2ndquadrant.com>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Alvaro Herrera <alvherre@2ndquadrant.com>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Andrew Dunstan <andrew.dunstan@2ndquadrant.com>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Michael Paquier <michael@paquier.xyz>
Re: pgsql: Improve autovacuum logging for aggressive andanti-wraparound ru Masahiko Sawada <sawada.mshk@gmail.com>
On 2018-09-24 18:25:46 +0000, Nasby, Jim wrote: > > > On Sep 21, 2018, at 12:43 PM, Andres Freund wrote: > > > >> But as far i can see it is possible have aggressive non-wraparound vacuum. One important difference - regular and aggressive regular can be canceled by backend,.wraparound autovacuum can not. (by checking PROC_VACUUM_FOR_WRAPAROUND in src/backend/storage/lmgr/proc.c ) > > > > Yes, without checking the code, they should be different. Aggressive is > > controlled by vacuum_freeze_table_age whereas anti-wrap is controlled by > > autovacuum_freeze_max_age (but also implies aggressive). > > Right, except that by the time you get into the vacuum code itself nothing should really care about that difference. AFAICT, the only thing is_wraparound is being used for is to set MyPgXact->vacuumFlags |= PROC_VACUUM_FOR_WRAPAROUND, which prevents the deadlock detector from killing an autovac process that’s trying to prevent a wraparound. I think it’d be clearer to remove is_wraparound and move the check from vacuum_rel() into lazy_vacuum_rel() (which is where the limits for HeapTupleSatisfiesVacuum get determined). Something like the attached. I'm very doubtful this is an improvement. Especially with the upcoming pluggable storage work making vacuumlazy.c heap specific, while vacuum.c stays generic. The concept of something like PROC_VACUUM_FOR_WRAPAROUND, should imo not be pushed down that much (even if criteria for it might). Greetings, Andres Freund
В списке pgsql-hackers по дате отправления
От: Nasby, Jim
Дата: