Re: BUG #15840: Vacuum does not work after database stopped forwraparound protection. Database seems unrepearable.

Поиск
Список
Период
Сортировка
От Thierry Husson
Тема Re: BUG #15840: Vacuum does not work after database stopped forwraparound protection. Database seems unrepearable.
Дата
Msg-id 20190607174952.Horde.LmbDAeB4CYQATbr-VY29_ef@webmail.iciel.com
обсуждение исходный текст
Ответ на Re: BUG #15840: Vacuum does not work after database stopped forwraparound protection. Database seems unrepearable.  (Andres Freund <andres@anarazel.de>)
Ответы Re: BUG #15840: Vacuum does not work after database stopped forwraparound protection. Database seems unrepearable.  (Andres Freund <andres@anarazel.de>)
Re: BUG #15840: Vacuum does not work after database stopped forwraparound protection. Database seems unrepearable.  (Alvaro Herrera <alvherre@2ndquadrant.com>)
Список pgsql-bugs
Hi Andres,

Andres Freund <andres@anarazel.de> a écrit :

> Hi,
>
> On 2019-06-07 16:40:27 -0500, Thierry Husson wrote:
>>   oid   |                 oid                  | relkind | relfrozenxid |
>> age
>> --------+--------------------------------------+---------+--------------+------------
>>  460564 | pg_temp_3.cur_semt700_progsync_4996  | r       |        36464 |
>> 2146483652
>>  460764 | pg_temp_8.cur_semt700_progsync_5568  | r       |     19836544 |
>> 2126683572
>>  460718 | pg_temp_4.cur_semt700_progsync_5564  | r       |     19836544 |
>> 2126683572
>>  460721 | pg_temp_5.cur_semt700_progsync_5565  | r       |     19836544 |
>> 2126683572
>>  461068 | pg_temp_22.cur_semt700_progsync_5581 | r       |     19836544 |
>> 2126683572
>>
>> These are temporary tables to manage concurrency & server load. It seems the
>> sudden disconnection due to wraparound protection didn't get them removed. I
>> removed them manually under single mode and there is no more warning now,
>> vacuum command included. Your command is very interesting to know.
>
> Hm. But you do have autovacuum enabled, is that right?  If enabled, have
> you tuned it at all? It seems quite possible that given your load (10
> parallel loads), the default settings werent aggressive enough.

Yes autovacuum is enabled. Aggressiveness was effectively a recent  
problem I had and putting its max_worker to 8 wasn't a solution, there  
were all busy 24/7 and I had to do a daily script to help it. The  
solution was to push vacuum_cost_limit to 2000, since then it works  
like a charm. Another issue was autovaccuums were taking the lock over  
my running vacuums, making them waiting for 5 days instead of taking  
around 1 hour. I could do another post on that but it's not PG12  
specific, I have it with 10.x

>> It annoying PG create a xId for empty temporary tables. You can't clear it
>> with a vacuum as there is no record. I have to terminate connexions of my
>> deamon processes daily to avoid wraparound protection. Is there a way to
>> tell PG to forget these tables on its age estimation?
>
> Normally postgres would drop such "orphaned" temp tables on its own, in
> autovacuum (triggering it when close to a wraparound, even if
> disabled). But if it can't keep up for some reason, then that's not
> necessarily good enough with very rapid xid usage as you seem to have.
>
> I'll start a thread about this subtopic on -hackers.
> Greetings,
>
> Andres Freund

What is the link to this forum? I'm very very interested to follow  
that subtopic & I could make some tests if necessary.

Have a great weekend & thanks for your time :)

Thierry






В списке pgsql-bugs по дате отправления:

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: BUG #15840: Vacuum does not work after database stopped forwraparound protection. Database seems unrepearable.
Следующее
От: Andres Freund
Дата:
Сообщение: Re: BUG #15840: Vacuum does not work after database stopped forwraparound protection. Database seems unrepearable.