Re: hamsterdb Transactional Storage (thanks to all of you)

From: Christoph Rupp <>
Date: Sun, 2 Aug 2009 03:41:08 -0700 (PDT)
Message-ID: <>


On Aug 2, 9:41 am, wrote:

> 1. You have locks.
> "Locking" just means others' access is constrained.
> Latches and mutexes are locks.

My "lock-free" described the implementation and the fact that i do not lock pages. I'll make sure that next time i'm understood better

> 2. A system only has concurrency if each user's sequence
> of transactions proceeds despite other transactions.
> Isolation level is one way to define the kind of atomic
> changes that a transaction is a sequence of from
> the user's point of view.
> (You don't seem to understand that isolation levels other
> than serializable violate ACID, unless you interpret the
> atomic changes as nested transactions.)
> The system must produce some interleaving of these
> atomic changes.
> Rollback and commitment are implementation
> concepts dealing with (user-invisible) attempted executions
> of individual transactions or atomic changes.
> Each user must see their transactions advance
> (observing also non-deterministic atomic changes from
> other transactions between their own atomic changes).

i think i understand your points. I also understand that the 'i' in ACID is violated if the isolation level is not SERIALIZABLE. on the other hand even ANSI suggests different/weaker isolation levels. I guess i follow a more pragmatic approach - also in case of concurrency, .

> I said these are basic concepts. If I haven't motivated
> you to re-examine some basic expositions, so be it.
> philip

Actually i'm grateful for your comments. my database is a hobby project and i'm happy to learn and improve my knowledge. I'd appreciate book recommendations.

Christoph Received on Sun Aug 02 2009 - 12:41:08 CEST

Original text of this message