Re: Autovacuum launcher occurs error when cancelled by SIGINT

From: Yugo Nagata <nagata(at)sraoss(dot)co(dot)jp>
To: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
Cc: PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Autovacuum launcher occurs error when cancelled by SIGINT
Date: 2017-06-22 04:58:38
Message-ID: 20170622135838.c149cdeb.nagata@sraoss.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, 22 Jun 2017 13:12:48 +0900
Michael Paquier <michael(dot)paquier(at)gmail(dot)com> wrote:

> On Wed, Jun 21, 2017 at 9:15 PM, Yugo Nagata <nagata(at)sraoss(dot)co(dot)jp> wrote:
> > 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.
>
> Your fix looks like a bad idea to me. If the shared memory area does
> not exist after an exception occurred the process should be able to
> re-attach to the shared memory area if it exists or create a new one
> if that's not the case. That should not be a one-time execution.

Thank you for your comment. I overlooked it and now I understand it.

> --
> Michael

--
Yugo Nagata <nagata(at)sraoss(dot)co(dot)jp>

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2017-06-22 05:04:42 Re: Fast promotion not used when doing a recovery_target PITR restore?
Previous Message Yugo Nagata 2017-06-22 04:52:53 Re: pg_terminate_backend can terminate background workers and autovacuum launchers