Re: Minor bug affecting ON CONFLICT lock wait log messages - Mailing list pgsql-hackers

From Stephen Frost
Subject Re: Minor bug affecting ON CONFLICT lock wait log messages
Date
Msg-id 20160315131830.GA3127@tamriel.snowman.net
Whole thread Raw
In response to Re: Minor bug affecting ON CONFLICT lock wait log messages  (Julien Rouhaud <julien.rouhaud@dalibo.com>)
Responses Re: Minor bug affecting ON CONFLICT lock wait log messages
Re: Minor bug affecting ON CONFLICT lock wait log messages
Re: Minor bug affecting ON CONFLICT lock wait log messages
List pgsql-hackers
* Julien Rouhaud (julien.rouhaud@dalibo.com) wrote:
> On 15/03/2016 03:30, Peter Geoghegan wrote:
> > On Mon, Mar 7, 2016 at 1:46 PM, Peter Geoghegan <pg@heroku.com> wrote:
> >> Attached patch fixes a bug reported privately by Stephen this morning.
> >
> > Bump.
> >
> > I would like to see this in the next point release. It shouldn't be
> > hard to review.
> >
>
> +            reason_wait = indexInfo->ii_ExclusionOps ?
> +                XLTW_RecheckExclusionConstr : XLTW_InsertIndex;
>
> Shouldn't it be set to XLTW_InsertIndexUnique instead?

Actually, no, though I had the same question for Peter when I was first
reviewing this.

XLTW_InsertIndexUnique is used when building a unique index, but this is
just a check, and more to the point, it's actually a re-check of what
we're doing in nbinsert.c where we're already using XLTW_InsertIndex.

We wouldn't want to end up returning different error messages for the
same command under the same conditions just based, which is what we'd
potentially end up doing if we used XLTW_InsertIndexUnique here.

> Otherwise the patch seems ok to me.

Agreed.  I'm going to play with it a bit more but barring objections,
I'll commit and back-patch Peter's patch.

Thanks!

Stephen

pgsql-hackers by date:

Previous
From: Thomas Reiss
Date:
Subject: Re: RFC: replace pg_stat_activity.waiting with something more descriptive
Next
From: David Rowley
Date:
Subject: Re: Parallel Aggregate