Re: TRUNCATE on foreign table

From: Ashutosh Bapat <ashutosh(dot)bapat(dot)oss(at)gmail(dot)com>
To: Kazutaka Onishi <onishi(at)heterodb(dot)com>
Cc: Zhihong Yu <zyu(at)yugabyte(dot)com>, PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Kohei KaiGai <kaigai(at)heterodb(dot)com>
Subject: Re: TRUNCATE on foreign table
Date: 2021-02-09 12:01:32
Message-ID: CAExHW5uWU85myXdgO_okW=Ab3+JLXOO1hbAb_Y1rdRZo5q+tQg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

IIUC, "truncatable" would be set to "false" for relations which do not
have physical storage e.g. views but will be true for regular tables.
When we are importing schema we need to set "truncatable"
appropriately. Is that something we will support with this patch?

Why would one want to truncate a foreign table instead of truncating
actual table wherever it is?

On Sun, Feb 7, 2021 at 6:06 PM Kazutaka Onishi <onishi(at)heterodb(dot)com> wrote:
>
> Thank you for your comment! :D
> I have fixed it and attached the revised patch.
>
> regards,
>
>
>
> 2021年2月7日(日) 2:08 Zhihong Yu <zyu(at)yugabyte(dot)com>:
>>
>> Hi,
>> + if (strcmp(defel->defname, "truncatable") == 0)
>> + server_truncatable = defGetBoolean(defel);
>>
>> Looks like we can break out of the loop when the condition is met.
>>
>> + /* ExecForeignTruncate() is invoked for each server */
>>
>> The method name in the comment is slightly different from the actual method name.
>>
>> + if (strcmp(defel->defname, "truncatable") == 0)
>> + truncatable = defGetBoolean(defel);
>>
>> We can break out of the loop when the condition is met.
>>
>> Cheers
>>
>> On Sat, Feb 6, 2021 at 5:11 AM Kazutaka Onishi <onishi(at)heterodb(dot)com> wrote:
>>>
>>> Hello,
>>>
>>> The attached patch is for supporting "TRUNCATE" on foreign tables.
>>>
>>> This patch includes:
>>> * Adding "ExecForeignTruncate" function into FdwRoutine.
>>> * Enabling "postgres_fdw" to use TRUNCATE.
>>>
>>> This patch was proposed by Kaigai-san in March 2020,
>>> but it was returned because it can't be applied to the latest source codes.
>>>
>>> Please refer to the discussion.
>>> https://www.postgresql.org/message-id/flat/CAOP8fzb-t3WVNLjGMC%2B4sV4AZa9S%3DMAQ7Q6pQoADMCf_1jp4ew%40mail.gmail.com#3b6c6ff85ff5c722b36c7a09b2dd7165
>>>
>>> I have fixed the patch due to submit it to Commit Fest 2021-03.
>>>
>>> regards,
>>>
>>> --
>>> ------------------
>>> Kazutaka Onishi
>>> (onishi(at)heterodb(dot)com)
>
>
>
> --
> ------------------
> Kazutaka Onishi
> (onishi(at)heterodb(dot)com)
>
>
> --
> ------------------
> Kazutaka Onishi
> (onishi(at)heterodb(dot)com)

--
Best Wishes,
Ashutosh Bapat

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Hou, Zhijie 2021-02-09 12:18:49 RE: Parallel INSERT (INTO ... SELECT ...)
Previous Message Amit Kapila 2021-02-09 11:57:12 Re: repeated decoding of prepared transactions