Re: TRUNCATE on foreign table

Kazutaka Onishi <onishi@heterodb.com>

From: Kazutaka Onishi <onishi@heterodb.com>
To: Zhihong Yu <zyu@yugabyte.com>
Cc: PostgreSQL Developers <pgsql-hackers@lists.postgresql.org>, Kohei KaiGai <kaigai@heterodb.com>
Date: 2021-02-07T12:36:13Z
Lists: pgsql-hackers

Attachments

Thank you for your comment! :D
I have fixed it and attached the revised patch.

regards,



2021年2月7日(日) 2:08 Zhihong Yu <zyu@yugabyte.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@heterodb.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@heterodb.com)
>>
>

-- 
------------------
Kazutaka Onishi
(onishi@heterodb.com)


-- 
------------------
Kazutaka Onishi
(onishi@heterodb.com)

Commits

  1. doc: Review for "Allow TRUNCATE command to truncate foreign tables".

  2. Don't pass "ONLY" options specified in TRUNCATE to foreign data wrapper.

  3. Support tab-complete for TRUNCATE on foreign tables.

  4. Allow TRUNCATE command to truncate foreign tables.

  5. Add support for asynchronous execution.