| From: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com> |
|---|---|
| To: | Yugo Nagata <nagata(at)sraoss(dot)co(dot)jp> |
| 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:12:48 |
| Message-ID: | CAB7nPqQMF45n5ZCVuGfuKfkj-z1bir3dU2qPg8yZUFHrGv2_8Q@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
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.
--
Michael
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Michael Paquier | 2017-06-22 04:18:43 | Re: Autovacuum launcher occurs error when cancelled by SIGINT |
| Previous Message | Amit Langote | 2017-06-22 04:04:58 | Re: pgrowlocks relkind check |