Andy Leszczynski wrote:
> 
> I need to now option I open the Berkley DB (both db and env) to have 
> configuration for multiple writers and multiple readers.  Via multiple 
> processes  and multiple threads. No trx needed.

the simple answer is you can't.  bdbm is probably single writer multiple 
reader.  I believe if you use of the the most recent sleepy cat 
database, you have support for multiple readers and writers in any context.

when I did this, I stuck my gdbm database into a multithreaded 
stand-alone process.  I used XML RPC for access and used a per key 
locking mechanism internal to the data storage and retrieval process. 
This locking mechanism set appropriate locks so that a writer for 
specific key would wait for all readers of that key to finish, and block 
all subsequent readers until it was done.

so far is working pretty well but I haven't tried it in a high load 
situation.

---eric

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to