[HACKERS] Autovacuum launcher occurs error when cancelled by SIGINT

Поиск
Список
Период
Сортировка
От Yugo Nagata
Тема [HACKERS] Autovacuum launcher occurs error when cancelled by SIGINT
Дата
Msg-id 20170621211538.0c9eae73.nagata@sraoss.co.jp
обсуждение исходный текст
Ответы Re: [HACKERS] Autovacuum launcher occurs error when cancelled by SIGINT  (Kuntal Ghosh <kuntalghosh.2007@gmail.com>)
Re: [HACKERS] Autovacuum launcher occurs error when cancelled by SIGINT  (Michael Paquier <michael.paquier@gmail.com>)
Re: [HACKERS] Autovacuum launcher occurs error when cancelled bySIGINT  (Alvaro Herrera <alvherre@2ndquadrant.com>)
Список pgsql-hackers
Hi,

As I report in another thread[1], I found the autovacuum launcher occurs
the following error in PG 10 when this received SIGINT. I can repuroduce
this by pg_cancel_backend or `kill -2 <pid of autovacuum laucher>`.

2017-06-21 13:56:07.010 JST [32483] ERROR:  canceling statement due to user request
2017-06-21 13:56:08.022 JST [32483] ERROR:  can't attach the same segment more than once
2017-06-21 13:56:09.034 JST [32483] ERROR:  can't attach the same segment more than once
2017-06-21 13:56:10.045 JST [32483] ERROR:  can't attach the same segment more than once
...

This errors continue until this process is terminated or the server is restarted.

When SIGINT is issued, the process exits from the main loop and returns
to sigsetjmp, and calls dsa_attach() before entering into the loop again,
this causes the error. 

We can fix it by calling dsa_attach() before sigsetjmp. Attached is the patch. 

Regards,

[1] 
https://www.postgresql.org/message-id/20170621205657.61d90605.nagata%40sraoss.co.jp

-- 
Yugo Nagata <nagata@sraoss.co.jp>

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Вложения

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

Предыдущее
От: Yugo Nagata
Дата:
Сообщение: [HACKERS] pg_terminate_backend can terminate background workers andautovacuum launchers
Следующее
От: Andrew Dunstan
Дата:
Сообщение: Re: [HACKERS] pg_bsd_indent 2.0 is available from git.postgresql.org