Re: CIC and deadlocks - Mailing list pgsql-hackers

From Pavan Deolasee
Subject Re: CIC and deadlocks
Date
Msg-id 2e78013d0704110113q123be526l70781e2b4763f1d3@mail.gmail.com
Whole thread Raw
In response to Re: CIC and deadlocks  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: [PATCHES] CIC and deadlocks  (Bruce Momjian <bruce@momjian.us>)
Re: [PATCHES] CIC and deadlocks  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers

On 4/11/07, Tom Lane <tgl@sss.pgh.pa.us> wrote:

[ itch... ]  The problem is with time-extended execution of
GetSnapshotData; what happens if the other guy lost the CPU for a good
long time while in the middle of GetSnapshotData?  He might set his
xmin based on info you saw as long gone.

You might be correct that it's safe, but the argument would have to
hinge on the OldestXmin process being unable to commit because of
someone holding shared ProcArrayLock; a point you are definitely not
making above.  (Study the comments in GetSnapshotData for awhile,
also those in xact.c's commit-related code.)


My argument was based on what you said above, but I obviously did not
state it well :)

Anyways, I think its better to be safe and we agree that its not such a
bad thing to take exclusive lock on procarray because CIC is not something
that happens very often. Attached is a revised patch which takes exclusive
lock on the procarray, rest remaining the same.

Thanks,
Pavan

--

EnterpriseDB     http://www.enterprisedb.com
Attachment

pgsql-hackers by date:

Previous
From: ITAGAKI Takahiro
Date:
Subject: Re: Question about SHM_QUEUE
Next
From: NikhilS
Date:
Subject: Re: UPDATE using sub selects