Re: partition routing layering in nodeModifyTable.c

From: Andres Freund <andres(at)anarazel(dot)de>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Etsuro Fujita <etsuro(dot)fujita(at)gmail(dot)com>, Amit Langote <amitlangote09(at)gmail(dot)com>, 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-03 18:03:41
Message-ID: 20190803180341.vhwxn6zlqkhckr5m@alap3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

On 2019-08-03 13:48:01 -0400, Tom Lane wrote:
> Andres Freund <andres(at)anarazel(dot)de> writes:
> > On 2019-08-03 19:41:55 +0900, Etsuro Fujita wrote:
> >> What API does that function break?
>
> > You need to call it, whereas previously you did not need to call it. The
> > effort to change an FDW to get one more parameter, or to call that
> > function is about the same.
>
> If those are the choices, adding a parameter is clearly the preferable
> solution, because it makes the API breakage obvious at compile.

Right. I think it's a *bit* less clear in this case because we'd also
remove the field that such FDWs with direct modify support would use
now (EState.es_result_relation_info).

But I think it's also just plainly a better API to use the
parameter. Even if, in contrast to the BeginDirectModify at hand,
BeginForeignModify didn't already accept it. Requiring a function call to
gather information that just about every realistic implementation is
going to need doesn't make sense.

Greetings,

Andres Freund

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2019-08-03 19:13:48 Re: [PATCH] Stop ALTER SYSTEM from making bad assumptions
Previous Message Tom Lane 2019-08-03 17:48:01 Re: partition routing layering in nodeModifyTable.c