[prev in list] [next in list] [prev in thread] [next in thread] 

List:       zodb-dev
Subject:    [ZODB-Dev] Re: ZODB Blob implementation
From:       Toby Dickenson <tdickenson () devmail ! geminidataloggers ! co ! uk>
Date:       2005-06-14 9:03:31
Message-ID: 200506141003.31323.tdickenson () devmail ! geminidataloggers ! co ! uk
[Download RAW message or body]

On Saturday 11 June 2005 13:15, Christian Theune wrote:

> I just wanted to check if you're still interested in having a look at
> the new Blob implementation of ZODB.
> 

I had a look a while ago, and sent you some comments by private email. The 
machine it was sent from is currently offline, so I cant dig up that email 
right now...

Following comment are from memory:

> Jim especially would appreciate it if you would look at the commit
> semantics we went for.

There are two problems with implementing your own commit logic. Firstly, the 
theoretically unfixable distributed transaction problem - there will always 
be a small window where a crash can leave a transaction's blobs committed but 
the pickles uncommitted.

The second problem with implementing your own commit logic is that you need to 
*implement* that commit logic. It is quite a few lines of code, and from 
memory there were a couple of outstanding problems. (I dont remember 
details :-(

I think a better solution would be to rely on the underlying pickle storage as 
the authority on whether a given transaction was actually committed. That 
absolves you of the responsibility of rollback, and of tracking the id of the 
most recent transaction. I think I had a cunning implementation strategy too; 
Ill take another look if you cant dig out that email.

-- 
Toby Dickenson
_______________________________________________
For more information about ZODB, see the ZODB Wiki:
http://www.zope.org/Wikis/ZODB/

ZODB-Dev mailing list  -  ZODB-Dev@zope.org
http://mail.zope.org/mailman/listinfo/zodb-dev
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic