[ZODB-Dev] weird conflicts with BTrees

Adam GROSZER agroszer at gmail.com
Wed Nov 30 10:44:20 UTC 2011


Hello,

I thought BTrees have conflict resolution code.

We have here a weird conflict here, the BTree in question is a 
SessionDataContainer. The conflict seems to appear when one transaction 
removes and the other adds an entry.

(snip)
/ZODB/Connection.py", line 566, in commit
     self._commit(transaction)
   File 
"/home/zope/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", 
line 614, in _commit
     self._store_objects(ObjectWriter(obj), transaction)
   File 
"/home/zope/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/Connection.py", 
line 666, in _store_objects
     s = self._storage.store(oid, serial, p, '', transaction)
   File 
"/home/zope/eggs/ZODB3-3.9.7-py2.6-linux-x86_64.egg/ZODB/FileStorage/FileStorage.py", 
line 512, in store
     data=data)
ConflictError: database conflict error (oid 0x18, class 
BTrees.OOBTree.OOBTree, serial this txn started with 0x0392bbce8f0f9c11 
2011-11-29 13:02:33.529916, serial currently committed 
0x0392bbd10869d9bb 2011-11-29 13:05:01.971909)


-- 
Best regards,
  Adam GROSZER
--
Quote of the day:
Can anyone remember when the times were not hard, and money not scarce?



More information about the ZODB-Dev mailing list