On 3/25/22 23:34, Laurenz Albe wrote:
> On Fri, 2022-03-25 at 23:16 +0100, Loles wrote:
>> Suppose the databases on my instance are near to have a wraparound failure.
>>
>> (I think so, from what I see, but in the PostgreSQL log I haven't seen any warning about It yet).
>>
>> What do I have to do?
>>
>> vacuum freeze;
>>
>> better than,
>>
>> vacuum analyze;
>>
>> Or both?
>>
>> If the autovacuum_freeze configuration parameters have defaults values, should I modify any first?
>>
>> More I read of this topic, more confused I am.
>>
>> Please, I need simple and wise advice :)
> DON'T PANIC
>
> If what you see is the age of your oldest unfrozen rows approaching 200 million,
> everything is just normal. That's when anti-wraparound autovacuum *begins*.
>
> Normally, you have nothing to do, except perhaps make sure than autovacuum is
> fast enough (autovacuum_vacuum_cost_delay = 2).
>
> If you want to prevent that autovacuum run from happening while your system is
> busy (which normally also is no problem), you can trigger a manual VACUUM at
> a time of lower database activity. But make it a plain VACUUM, not a
> VACUUM (FREEZE)
Why not VACUUM FREEZE?
> or (god forbid) VACUUM (FULL), and only VACUUM those tables
> that are large and approaching the threshold. And don't VACUUM them all at the
> same time.
>
> Yours,
> Laurenz Albe
--
Angular momentum makes the world go 'round.