Sander Striker wrote:
Gregory (Grisha) Trubetskoy wrote:


On Fri, 17 Jun 2005, Jim Gallacher wrote:

I was thinking we'd still use the current global locking scheme, but keep the file open between requests. Not sure if this would be robust or just asking for dbm file corruption though.


I'm pretty sure it won't work, I think you cannot have a dbm open by more than one process without getting it corrupted.


With Berkeley DB you can,


A quick google shows that you need the bsddb3 python module to access the transactional features (many readers, many writers, locking handled by the bsddb library, etc). For the lucky Debian user it's just a simple "apt-get install python-bsddb3" away. For everyone else:
http://pybsddb.sourceforge.net/bsddb3.html

(Ok maybe not everyone - I'm sure some other distributions ship with bsddb3 as well.)

Using bsddb3 would introduce new dependency for mod_python, so I don't know if it's a good idea to use transaction handling by default for DbmSession. Maybe we could offer a subclass?

At any rate, this is something to investigate *after* the 3.2 release. ;)

Regards,
Jim

Reply via email to