Re: partition routing layering in nodeModifyTable.c

From: Etsuro Fujita <etsuro(dot)fujita(at)gmail(dot)com>
To: Amit Langote <amitlangote09(at)gmail(dot)com>
Cc: Andres Freund <andres(at)anarazel(dot)de>, Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, David Rowley <david(dot)rowley(at)2ndquadrant(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Etsuro Fujita <fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, amitdkhan(dot)pg(at)gmail(dot)com
Subject: Re: partition routing layering in nodeModifyTable.c
Date: 2019-08-07 09:00:04
Message-ID: CAPmGK141C_UqvxwGaAxhmg0Qm8Q3SKHouHNd+VaJUhSDXe_JNg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Amit-san,

On Wed, Aug 7, 2019 at 4:28 PM Amit Langote <amitlangote09(at)gmail(dot)com> wrote:
> On Wed, Aug 7, 2019 at 12:00 PM Etsuro Fujita <etsuro(dot)fujita(at)gmail(dot)com> wrote:
> > IIUC, I think we reached a consensus at least on the 0001 patch.
> > Andres, would you mind if I commit that patch?
>
> I just noticed obsolete references to es_result_relation_info that
> 0002 failed to remove. One of them is in fdwhandler.sgml:
>
> <programlisting>
> TupleTableSlot *
> IterateDirectModify(ForeignScanState *node);
> </programlisting>
>
> ... The data that was actually inserted, updated
> or deleted must be stored in the
> <literal>es_result_relation_info-&gt;ri_projectReturning-&gt;pi_exprContext-&gt;ecxt_scantuple</literal>
> of the node's <structname>EState</structname>.
>
> We will need to rewrite this without mentioning
> es_result_relation_info. How about as follows:
>
> - <literal>es_result_relation_info-&gt;ri_projectReturning-&gt;pi_exprContext-&gt;ecxt_scantuple</literal>
> - of the node's <structname>EState</structname>.
> + <literal>ri_projectReturning-&gt;pi_exprContext-&gt;ecxt_scantuple</literal>
> + of the result relation's<structname>ResultRelInfo</structname> that has
> + been made available via node.
>
> I've updated 0001 with the above change.

Good catch!

This would be nitpicking, but:

* IIUC, we don't use the term "result relation" in fdwhandler.sgml.
For consistency with your change to the doc for BeginDirectModify, how
about using the term "target foreign table" instead of "result
relation"?

* ISTM that "<structname>ResultRelInfo</structname> that has been made
available via node" would be a bit fuzzy to FDW authors. To be more
specific, how about changing it to
"<structname>ResultRelInfo</structname> passed to
<function>BeginDirectModify</function>" or something like that?

Best regards,
Etsuro Fujita

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2019-08-07 09:00:14 Re: s/rewinded/rewound/?
Previous Message Magnus Hagander 2019-08-07 08:53:45 Re: s/rewinded/rewound/?