View Single Post

   
  #5 (permalink)  
Old 04-15-2008, 11:48 PM
Heikki Linnakangas
 
Posts: n/a
Default Re: advancing snapshot's xmin

Neil Conway wrote:
> On Tue, 2008-03-25 at 17:26 -0300, Alvaro Herrera wrote:
>> There is one hole here: contention on ProcArrayLock. Basically, for
>> simple transactions we will need to update MyProc after every command.

>
> If we're just updating MyProc->xmin, we only need to acquire
> ProcArrayLock in shared mode, right?


In fact, do you need a lock at all? We already assume that
reading/writing a TransactionId is atomic in many places. We acquire
ProcArrayLock at the end of transaction when we clear MyProc->xid, to
ensure that we don't exit the set of running transactions while someone
else is taking a snapshot, but AFAICS that's not necessary when we just
advance MyProc->xmin.

--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply With Quote