FOR [SHARE|UPDATE] NOWAIT may still block in EvalPlanQualFetch - Mailing list pgsql-hackers

From Craig Ringer
Subject FOR [SHARE|UPDATE] NOWAIT may still block in EvalPlanQualFetch
Date
Msg-id 51FB6703.9090801@2ndquadrant.com
Whole thread Raw
Responses Re: FOR [SHARE|UPDATE] NOWAIT may still block in EvalPlanQualFetch  (Bruce Momjian <bruce@momjian.us>)
Re: FOR [SHARE|UPDATE] NOWAIT may still block in EvalPlanQualFetch  (Alvaro Herrera <alvherre@2ndquadrant.com>)
List pgsql-hackers
FOR SHARE|UPDATE NOWAIT will still block if they have to follow a ctid
chain because the call to EvalPlanQualFetch doesn't take a param for
noWait, so it doesn't know not to block if the updated row can't be locked.

The attached patch against master includes an isolationtester spec to
demonstrate this issue and a proposed fix. Builds with the fix applied
pass "make check" and isolationtester "make installcheck".

To reach this point you need to apply the patch in
http://www.postgresql.org/message-id/51FB4305.3070600@2ndquadrant.com
first, otherwise you'll get stuck there and won't touch the code changed
in this patch.

--
 Craig Ringer                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

Attachment

pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: Re: ALTER SYSTEM SET command to change postgresql.conf parameters (RE: Proposal for Allow postgresql.conf values to be changed via SQL [review])
Next
From: Dimitri Fontaine
Date:
Subject: Re: [9.3 bug] disk space in pg_xlog increases during archive recovery