Re: [HACKERS] Get stuck when dropping a subscription duringsynchronizing table

Поиск
Список
Период
Сортировка
От Masahiko Sawada
Тема Re: [HACKERS] Get stuck when dropping a subscription duringsynchronizing table
Дата
Msg-id CAD21AoCCAT_1qx2RQMBr0EVi7-qXdVE-QJX_=d-cLqPNjOisdQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [HACKERS] Get stuck when dropping a subscription duringsynchronizing table  (Masahiko Sawada <sawada.mshk@gmail.com>)
Ответы Re: [HACKERS] Get stuck when dropping a subscription duringsynchronizing table  (Peter Eisentraut <peter.eisentraut@2ndquadrant.com>)
Список pgsql-hackers
On Thu, Jun 15, 2017 at 10:22 AM, Masahiko Sawada <sawada.mshk@gmail.com> wrote:
> On Thu, Jun 15, 2017 at 7:35 AM, Petr Jelinek
> <petr.jelinek@2ndquadrant.com> wrote:
>> On 13/06/17 21:49, Peter Eisentraut wrote:
>>> On 6/13/17 02:33, Noah Misch wrote:
>>>>> Steps to reproduce -
>>>>> X cluster -> create 100 tables , publish all tables  (create publication pub
>>>>> for all tables);
>>>>> Y Cluster -> create 100 tables ,create subscription(create subscription sub
>>>>> connection 'user=centos host=localhost' publication pub;
>>>>> Y cluster ->drop subscription - drop subscription sub;
>>>>>
>>>>> check the log file on Y cluster.
>>>>>
>>>>> Sometime , i have seen this error on psql prompt and drop subscription
>>>>> operation got failed at first attempt.
>>>>>
>>>>> postgres=# drop subscription sub;
>>>>> ERROR:  tuple concurrently updated
>>>>> postgres=# drop subscription sub;
>>>>> NOTICE:  dropped replication slot "sub" on publisher
>>>>> DROP SUBSCRIPTION
>>>>
>>>> [Action required within three days.  This is a generic notification.]
>>>
>>> It's being worked on.  Let's see by Thursday.
>>>
>>

I've reviewed these patches. 0001 patch conflicts with commit
a571c7f661a7b601aafcb12196d004cdb8b8cb23.

>> Attached fixes it (it was mostly about order of calls). I also split the
>> SetSubscriptionRelState into 2 separate interface while I was changing
>> it, because now that the update_only bool was added it has become quite
>> strange to have single interface for what is basically two separate
>> functions.

+1 from me, too.
A subscription relation state may have been removed already when we
try to update it. SetSubscriptionRelState didn't emit an error in such
case but with this patch we end up with an error. Since we shouldn't
ignore such error in UpdateSubscriptionRelState I'd say we can let the
user know about that possibility in the error message.

Regards,

--
Masahiko Sawada
NIPPON TELEGRAPH AND TELEPHONE CORPORATION
NTT Open Source Software Center



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

Предыдущее
От: Kyotaro HORIGUCHI
Дата:
Сообщение: Re: [HACKERS] Adding support for Default partition in partitioning
Следующее
От: Ashutosh Bapat
Дата:
Сообщение: Re: [HACKERS] pg_waldump command line arguments