Am Freitag 09 Oktober 2009 21:44:12 schrieb Roger Ineichen:
Hi Hermann
Betreff: Re: [Zope-dev] ZODB Competing read/writes: How to find out which attribute?
Hermann Himmelbauer wrote:
Hi, I once in the while get the following warning in my Zope 3
log, which
I'd like to resolve:
2009-10-07T14:35:41 WARNING ZopePublication Competing
writes/reads at
/BSPSite/act/++vh++http:zis.act.at:80/bankneu/++/c/acc/booklis
t/index.html:
database conflict error (oid 0x7a5d, class BTrees.OOBTree.OOBTree, serial this txn started with 0x0381388ca6804966 2009-10-07 12:28:39.023700, serial currently committed 0x03813893b087d0cc 2009-10-07 12:35:41.374343)
That URL looks like it should only be reading the database, but the fact that you get a conflict error suggests that the code behind that URL is writing to the database. If I were you, I would first ensure that read operations never write to the database.
just a hint, sometimes session get accessed with session[key] wich will force a write operation. If so, you can prevent creating a new session by using session.get(key, someDefaultValue)
Thanks for the info - but why is that? I always had the impression, that mydict['mykey'] does the same as mydict.get('mykey')? What exactly is written during session['mykey']? Moreover, does that concurrent read/write problem with sessions apply to one user only or to anyone who accesses the session? Best Regards, Hermann -- hermann@qwer.tk GPG key ID: 299893C7 (on keyservers) FP: 0124 2584 8809 EF2A DBF9 4902 64B4 D16B 2998 93C7