Re: Autovacuum launcher occurs error when cancelled by SIGINT

From: Michael Paquier <michael(dot)paquier(at)gmail(dot)com>
To: Kuntal Ghosh <kuntalghosh(dot)2007(at)gmail(dot)com>
Cc: Dilip Kumar <dilipbalaut(at)gmail(dot)com>, Yugo Nagata <nagata(at)sraoss(dot)co(dot)jp>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Robert Haas <robertmhaas(at)gmail(dot)com>, Thomas Munro <thomas(dot)munro(at)enterprisedb(dot)com>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Subject: Re: Autovacuum launcher occurs error when cancelled by SIGINT
Date: 2017-06-22 06:10:53
Message-ID: CAB7nPqTzwaD5O3aTSikqiCQnwGNLFXnKOeh8SV4SQ7dN1NA7qA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Jun 22, 2017 at 2:44 PM, Kuntal Ghosh
<kuntalghosh(dot)2007(at)gmail(dot)com> wrote:
> On Thu, Jun 22, 2017 at 9:48 AM, Michael Paquier
> <michael(dot)paquier(at)gmail(dot)com> wrote:
>> On Thu, Jun 22, 2017 at 1:29 AM, Kuntal Ghosh
>> <kuntalghosh(dot)2007(at)gmail(dot)com> wrote:
>>> But, I've some more doubts.
>>> 1. When should we use dsm_find_mapping()? (The first few lines of
>>> dsm_attach is same as dsm_find_mapping().)
>>> 2. As a user of dsa, how should we check whether my dsa handle is
>>> already attached? I guess this is required because, if a user tries to
>>> re-attach a dsa handle, it's punishing the user by throwing an error
>>> and the user wants to avoid such errors.
>>
>> From a logical point of view, there is nothing preventing the use of
>> dsm_find_mapping() on a DSA handle, still the API layering looks wrong
>> if you want to check for an existing mapping. So why not defining a
>> new API, like dsa_find_mapping() that just wraps dsm_find_mapping()
>> but has its own error handling? This would offer more flexibility for
>> the future.
>
> Yeah. That sounds reasonable. Or, dsa_attach can throw error conditionally.

Maybe, let's see what Robert and Thomas have to tell on the matter as
they wrote that code. My take on the matter is that the DSA API should
remain close to its parent. By the way, this is a new issue in
Postgres 10 as this code has been introduced by 7526e10. So I have
added an open item with Álvaro as owner.
--
Michael

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Amit Langote 2017-06-22 06:44:58 Fix comment in xlog.c
Previous Message Kyotaro HORIGUCHI 2017-06-22 06:03:19 Re: Get stuck when dropping a subscription during synchronizing table