Question about SERIALIZE transaction isolation

From: Christoph Rupp <>
Date: Wed, 17 Jun 2009 04:33:12 -0700 (PDT)
Message-ID: <>


i'm nearly ready for my first release of my new concurrent, multithreaded,  ACID transactional, logical idempotent logging, lock-free database engine (key/value storage).

OK, enough buzzwords for today :)

Some of you were kind enough to help me a couple of times with my questions. This one is about the behaviour of a read-only transaction in the SERIALIZE isolation level.

INSERT (a, b)

        TXN B:
        FIND (a)

Does the lookup of an un-committed item return KEY_NOT_FOUND or does it create a transaction conflict?

Some background: In my Database all transaction conflicts are discovered in memory, without accessing the buffers. My Transactions do not lock each other or keep locks during their life time. Currently, if there's a conflict, my insert/erase functions return an error (TXN_CONFLICT).

I did some research about the SERIALIZE isolation level but found documentation which mentions that a lookup would cause a wait (http:// But i think that it's annoying when most range queries fail because of conflicts. I think it's better if the uncommitted key is ignored (only for lookups).


PS: you see that i'm wearing a developer hat, i'm not a DB admin or SQL guru... Received on Wed Jun 17 2009 - 13:33:12 CEST

Original text of this message