Boost logo

Boost :

Subject: Re: [boost] Boost library submission (poll for interest)
From: Stefan Strasser (strasser_at_[hidden])
Date: 2010-01-06 03:24:58


Am Tuesday 05 January 2010 21:21:29 schrieb vicente.botet:
> With your library, there are alreasy 3 libraries under construction
> providing a transactional service (Boost.STLdb, Boost.Persistent and
> TBoost.STM). The ideal would be to have a single transactional framework
> with several transactional resources, e.g shared memory resource
> (Boost.STLdb), persistent resource (Boost.Persistent ), in memory resource
> (Boost.STM). If I'm not wrong Boost.Persistent contains already a Ressource
> concept. I would like to see how this transactional framework can be made
> generic so the three libraries can share the same transaction. Stefan, Bob,
> are you interesteed in participating on such a framework?
>

sure, this is what I tried by defining the concepts, although I was never sure
if those are sufficient for all conceivable transactional resources.

https://svn.boost.org/svn/boost/sandbox/persistent/libs/persistent/doc/html/boost/persistent/ResourceManager.html
https://svn.boost.org/svn/boost/sandbox/persistent/libs/persistent/doc/html/persistent/extending.html

what's still missing from there is an interface to conduct transactions which
involve more than 1 resource, e.g. something like this in Berkeley:
http://pybsddb.sourceforge.net/api_c/txn_prepare.html
http://pybsddb.sourceforge.net/api_c/txn_recover.html

(what they call a "local transaction manager" I call a "resource manager", and
what they call a "global transaction manager" I call a "transaction manager")

we'd also have to find common ground on what Bob calls I think
a "row_level_lock_contention" and I call an "isolation_exception", and I'm
sure there is the equivalent in Boost.STM.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk