Re: PG12 change to DO UPDATE SET column references - Mailing list pgsql-hackers

From James Coleman
Subject Re: PG12 change to DO UPDATE SET column references
Date
Msg-id CAAaqYe-fbgHNJiaprDgLPcZKZ04+PdzH02uqkz+22tpZ77t0mQ@mail.gmail.com
Whole thread Raw
In response to Re: PG12 change to DO UPDATE SET column references  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Sat, Jan 20, 2024 at 5:57 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> James Coleman <jtc331@gmail.com> writes:
> > On Sat, Jan 20, 2024 at 12:59 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
> >> A HINT if the bogus column name (1) matches the relation name and
> >> (2) is field-qualified seems plausible to me.  Then it's pretty
> >> likely to be a user misunderstanding about whether to write the
> >> relation name.
>
> > Attached is a patch to do just that. We could also add tests for
> > regular UPDATEs if you think that's useful.
>
> Pushed with minor alterations:
>
> 1. I think our usual style for conditional hints is to use a ternary
> expression within the ereport, rather than duplicating code.  In this
> case that way allows not touching any of the existing lines, making
> review easier.

Ah, I'd wondered if we had a pattern for that, but I didn't know what
I was looking for.

> 2. I thought we should test the UPDATE case as well as the ON CONFLICT
> case, but I didn't think we needed quite as many tests as you had
> here.  I split up the responsibility so that one test covers the
> alias case and the other the no-alias case.

That all makes sense. I figured it was better to have tests show all
the possible combinations for review and then you could whittle them
down as you saw fit.

Thanks for reviewing and committing!

Regards,
James Coleman



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Make documentation builds reproducible
Next
From: Jeff Davis
Date:
Subject: Re: Change GUC hashtable to use simplehash?