Re: Fwd: Problem with a "complex" upsert - Mailing list pgsql-bugs

From Peter Geoghegan
Subject Re: Fwd: Problem with a "complex" upsert
Date
Msg-id CAH2-WzkW7pYx5M=NDGcnmPRMmum_jJPSdCVi1w6d=dmcvez-2A@mail.gmail.com
Whole thread Raw
In response to Re: Fwd: Problem with a "complex" upsert  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Fwd: Problem with a "complex" upsert
List pgsql-bugs
On Tue, Jul 10, 2018 at 1:59 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> I tried debugging why that happens and concluded that rewriteTargetView
>> fails to *completely* account for the fact that the view's column's may
>> have different attribute numbers than the underlying table that the DO
>> UPDATE action will be applied to.  Especially, even if the view's Vars are
>> replaced with those corresponding underlying base table's columns, the
>> TargetEntry's into which those Vars are contained are not refreshed, that
>> is, their resnos don't match varattnos.
>
>> I created a patch that seems to fix the issue, which also adds a
>> representative test in updatable_view.sql.
>
> Hm.  I looked at this patch a bit.  While the onConflictSet change looks
> reasonable, I find the exclRelTlist change fishy.  Shouldn't those resnos
> correspond to the exclRelTlist's *own* vars, independently of what is or
> isn't in the view_targetlist?  And why is it OK to ignore failure to find
> a match?

Any update on this, Amit? I would like to get this one out of the way soon.

Thanks
-- 
Peter Geoghegan


pgsql-bugs by date:

Previous
From: Tom Lane
Date:
Subject: Re: BUG #15248: pg_upgrade fails when a function with an empty search_path is encountered
Next
From: PG Bug reporting form
Date:
Subject: BUG #15305: PREPARE TRANSACTION andpg_create_logical_replication_slot()