On 2016/02/15 15:20, Rushabh Lathia wrote:
On Fri, Feb 12, 2016 at 5:40 PM, Etsuro Fujita
<fujita.ets...@lab.ntt.co.jp <mailto:fujita.ets...@lab.ntt.co.jp>> wrote:

    As a result of our discussions, we reached a conclusion that the DML
    pushdown APIs should be provided together with existing APIs such as
    ExecForeignInsert, ExecForeignUpdate or ExecForeignDelete, IIUC.
    So, how about (1) leaving the description for the existing APIs
    as-is and (2) adding a new description for the DML pushdown APIs in
    parenthesis, like this?:

          If the <function>IsForeignRelUpdatable</> pointer is set to
          <literal>NULL</>, foreign tables are assumed to be insertable,
    updatable,
          or deletable if the FDW provides <function>ExecForeignInsert</>,
          <function>ExecForeignUpdate</>, or <function>ExecForeignDelete</>
          respectively.
          (If the FDW attempts to optimize a foreign table update, it still
          needs to provide PlanDMLPushdown, BeginDMLPushdown,
          IterateDMLPushdown and EndDMLPushdown.)

    Actually, if the FDW provides the DML pushdown APIs, (pushdown-able)
    foreign table updates can be done without ExecForeignInsert,
    ExecForeignUpdate or ExecForeignDelete.  So, the above docs are not
    necessarily correct.  But we don't recommend to do that without the
    existing APIs, so I'm not sure it's worth complicating the docs.

Adding a new description for DML pushdown API seems good idea. I would
suggest to add that as separate paragraph rather then into brackets.

OK, will do.

Best regards,
Etsuro Fujita




--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to