Thread: pgsql: Avoid incorrectly indicating exclusion constraint wait

pgsql: Avoid incorrectly indicating exclusion constraint wait

From
Stephen Frost
Date:
Avoid incorrectly indicating exclusion constraint wait

INSERT ... ON CONFLICT's precheck may have to wait on the outcome of
another insertion, which may or may not itself be a speculative
insertion.  This wait is not necessarily associated with an exclusion
constraint, but was always reported that way in log messages if the wait
happened to involve a tuple that had no speculative token.

Initially discovered through use of ON CONFLICT DO NOTHING, where
spurious references to exclusion constraints in log messages were more
likely.

Patch by Peter Geoghegan.
Reviewed by Julien Rouhaud.

Back-patch to 9.5 where INSERT ... ON CONFLICT was added.

Branch
------
REL9_5_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/3f14d8d59457f98b8ddbbc29cffae9260037aad5

Modified Files
--------------
src/backend/executor/execIndexing.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)