On the topic of nested skiplist transactions

Bron Gondwana brong at fastmail.fm
Tue Sep 2 03:11:51 EDT 2008

On Tue, 2 Sep 2008 16:29:33 +1000, "Bron Gondwana" <brong at fastmail.fm> said:
> I've been thinking a bit about transactions and skiplists these past few
> days, since sending the patch that refactors the skiplist locking code.

For reference, here's what BDB does:


My proposal is different in that it doesn't support multiple nested concurrent
transactions.  If you open up a new transaction, you must complete it (one way
or the other) before anything can happen outside that transaction.

You can, however, open yet another sub-nested transaction like so:

t1 (
  STORE 'a' 'x'
  t2 ( 
    t3 (
      DELETE 'a'
      t4 (
        STORE 'a' 'z'

But basically every transaction can be considered equivalent to a single operation
in the parent transaction.

  Bron Gondwana
  brong at fastmail.fm

More information about the Cyrus-devel mailing list