Re: [PATCH] Logical decoding of TRUNCATE

From: Marco Nenciarini <marco(dot)nenciarini(at)2ndquadrant(dot)it>
To: Petr Jelinek <petr(dot)jelinek(at)2ndquadrant(dot)com>, Simon Riggs <simon(at)2ndquadrant(dot)com>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: [PATCH] Logical decoding of TRUNCATE
Date: 2018-01-23 17:47:16
Message-ID: fde57e23-9828-8741-bb60-2b2d9e4ad55a@2ndquadrant.it
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers

Il 23/01/18 18:25, Petr Jelinek ha scritto:
> On 23/01/18 18:19, Marco Nenciarini wrote:
>> Il 23/01/18 18:13, Petr Jelinek ha scritto:
>>> Hi,
>>>
>>> On 23/01/18 15:38, Marco Nenciarini wrote:
>>>> Il 22/01/18 23:18, Petr Jelinek ha scritto:
>>>>> On 22/01/18 19:45, Petr Jelinek wrote:
>>>>>
>>>>> Actually on second look, I don't like the new boolean parameter much.
>>>>> I'd rather we didn't touch the input list and always close only
>>>>> relations opened inside the ExecuteTruncateGuts().
>>>>>
>>>>> It may mean more list(s) but the current interface is still not clean.
>>>>>
>>>>
>>>> Now ExecuteTruncateGuts unconditionally closes the relations that it
>>>> opens. The caller has now always the responsibility to close the
>>>> relations passed with the explicit_rels list.
>>>
>>> This looks good.
>>>
>>>>
>>>> Version 15 attached.
>>>>
>>>
>>> I see you still do CASCADE on the subscriber though.
>>>
>>
>> No it doesn't. The following code in worker.c prevents that.
>>
>>
>> + /*
>> + * Even if we used CASCADE on the upstream master we explicitly
>> + * default to replaying changes without further cascading.
>> + * This might be later changeable with a user specified option.
>> + */
>> + cascade = false;
>
> Ah, that's pretty ugly, why don't we just use DROP_RESTRICT always
> instead of this (keeping the comment). Unless you plan to make it option
> as part of this patch, the current coding is confusing.
>

Ok, Removed.

Version 16 attached.

Regards,
Marco

--
Marco Nenciarini - 2ndQuadrant Italy
PostgreSQL Training, Services and Support
marco(dot)nenciarini(at)2ndQuadrant(dot)it | www.2ndQuadrant.it

Attachment Content-Type Size
0001-truncate_ignore_fks_role_replica.v4.patch text/plain 2.8 KB
0002-logical_decode_truncate.v16.patch text/plain 53.7 KB

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Petr Jelinek 2018-01-23 17:50:15 Re: [PATCH] Logical decoding of TRUNCATE
Previous Message Petr Jelinek 2018-01-23 17:25:05 Re: [PATCH] Logical decoding of TRUNCATE

Browse pgsql-hackers by date

  From Date Subject
Next Message Petr Jelinek 2018-01-23 17:50:15 Re: [PATCH] Logical decoding of TRUNCATE
Previous Message Peter Eisentraut 2018-01-23 17:32:11 Re: pgsql: Improve scripting language in pgbench