From: | Michael Paquier <michael(at)paquier(dot)xyz> |
---|---|
To: | "tsunakawa(dot)takay(at)fujitsu(dot)com" <tsunakawa(dot)takay(at)fujitsu(dot)com> |
Cc: | 'Bharath Rupireddy' <bharath(dot)rupireddyforpostgres(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Support for VACUUMing Foreign Tables |
Date: | 2021-05-14 05:37:02 |
Message-ID: | YJ4MfqUJBfuu9dYZ@paquier.xyz |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Fri, May 14, 2021 at 01:05:02AM +0000, tsunakawa(dot)takay(at)fujitsu(dot)com wrote:
> Could you let us imagine more concretely how useful it will be?
> While TRUNCATE can be part of an application's data processing as
> alternative to DELETE, I think VACUUM is purely the data storage
> maintenance that's performed by the DBA and can be done naturally
> locally on the server where the table resides. (The existing
> ANALYZE on FDW is an exception; it's useful to also have data
> statistics locally.)
The concept of vacuuming applies to PG because of its concepts behind
MVCC. Thinking broader, in which aspect can that apply to FDWs in
general?
> How about adding a routine to the FDW interface that allows to
> execute an arbitrary command like the following? VACUUM will be
> able to use this.
>
> PGresult *DoCommandPathThrough(ForeignTable *table, const char *command);
>
> Or, maybe it's more flexible to use ForeignServer instead of ForeignTable.
Being able to pass down to remote servers arbitrary command strings
sounds like a recipy for security holes, IMO.
--
Michael
From | Date | Subject | |
---|---|---|---|
Next Message | Kyotaro Horiguchi | 2021-05-14 06:06:39 | Re: Some doubious error messages and comments |
Previous Message | Michael Paquier | 2021-05-14 05:30:14 | Re: subscriptioncheck failure |