Re: [Bug] Inconsistent result for inheritance and FOR UPDATE. - Mailing list pgsql-hackers

From Tom Lane
Subject Re: [Bug] Inconsistent result for inheritance and FOR UPDATE.
Date
Msg-id 23107.1418350792@sss.pgh.pa.us
Whole thread Raw
In response to Re: [Bug] Inconsistent result for inheritance and FOR UPDATE.  (Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>)
Responses Re: [Bug] Inconsistent result for inheritance and FOR UPDATE.  (Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>)
List pgsql-hackers
Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp> writes:
> (2014/12/12 10:37), Tom Lane wrote:
>> Yeah, this is clearly a thinko: really, nothing in the planner should
>> be using get_parse_rowmark().  I looked around for other errors of the
>> same type and found that postgresGetForeignPlan() is also using
>> get_parse_rowmark().  While that's harmless at the moment because we
>> don't support foreign tables as children, it's still wrong.  Will
>> fix that too.

> I don't think we need to fix that too.  In order to support that, I'm
> proposing to modify postgresGetForeignPlan() in the following way [1]
> (see fdw-inh-5.patch).

My goodness, that's ugly.  And it's still wrong, because this is planner
code so it shouldn't be using get_parse_rowmark at all.  The whole point
here is that the rowmark info has been transformed into something
appropriate for the planner to use.  While that transformation is
relatively trivial today, it might not always be so.
        regards, tom lane



pgsql-hackers by date:

Previous
From: Etsuro Fujita
Date:
Subject: Re: [Bug] Inconsistent result for inheritance and FOR UPDATE.
Next
From: Michael Paquier
Date:
Subject: Re: Review of Refactoring code for sync node detection