G.oogle and Dieter, Thanks for your explanations. English is not my mother language and from time to time i have difficulties to understand the mix of acronyms, jargon, short expressions used between gurus (except 'appris sur le tas' :), and something that first appeared obvious like transaction management becomes 'obscure' after having read messages about the subject. Your answers put a little bit of order in my fresh knowledge. Bye, Andre Gérard Oogle a écrit:
when two different users want to commit changes made to the same object at the same time
In http://www.dieter.handshake.de/pyprojects/zope/zope.html#bct_sec_5.1: 'The ZODB usually guarantees that a transaction does not read inconsistent data by issuing a |ReadConflictError| when it tries to read an object from the ZODB that has been modified since transaction start. Zope usually restarts the transaction in this case.'
I would guess so that:
* Since there is no such thing as 'at the same time' ... * the /first/ client that will issue a commit will be fine * Without Dieter's patch, the /second/ one should fail because a |ReadConflictError will have been thrown |