Nested xacts: looking for testers and review - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Nested xacts: looking for testers and review
Date
Msg-id 20040526220340.GA24890@dcc.uchile.cl
Whole thread Raw
Responses Re: Nested xacts: looking for testers and review  (Stephan Szabo <sszabo@megazone.bigpanda.com>)
Re: Nested xacts: looking for testers and review  (Tatsuo Ishii <t-ishii@sra.co.jp>)
Re: Nested xacts: looking for testers and review  (Stephan Szabo <sszabo@megazone.bigpanda.com>)
List pgsql-hackers
Hackers,

Ok, I've finally coded solutions to most problems regarding nested
transactions.  This means:

- reversing for the lock manager, catcache, relcache, buffer manager, asynchronous notifies, storage manager.

- transaction block state support, including appropiate XLog recording

- pg_subtrans subsystem (including changing state from SUBTRANS COMMITTED to COMMITTED when appropiate).  Also pg_clog
XLogrecovery was handed to SLRU so pg_subtrans and pg_clog share a rmgr identity.
 

- visibility rules.

I'm missing one item: deferred triggers.  The problem with this is that
the deftrig queue is not implemented using normal Lists, so there's no
efficient way to reassign to the parent when the subtransaction commits.
Also I'm not sure what should happen to the "immediate" pointer --- a
subtransaction should have it's own private copy, or it should inherit
the parent's?  Please whoever implemented this speak up (Stephan
Szabo?), as I'm not sure of the semantics.


I have tested it and it passes all regression tests (including ones I
added), plus some more tests I threw at it mainly for concurrency.
Everything behaves as expected.  At this time I'd like to have it
reviewed by the critic eye of the committers, and tested by whoever
would be using it.

I'm open for comments and suggestions and general input.  Thank you.

-- 
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
La web junta la gente porque no importa que clase de mutante sexual seas,
tienes millones de posibles parejas. Pon "buscar gente que tengan sexo con
ciervos incendiánse", y el computador dirá "especifique el tipo de ciervo"
(Jason Alexander)



pgsql-hackers by date:

Previous
From: David Blasby
Date:
Subject: Re: SELECT * FROM LIMIT 1; is really slow
Next
From: Tom Lane
Date:
Subject: Re: SELECT * FROM
LIMIT 1; is really slow