Re: ZODB.Conflict errors when having lots of documents in a folder

Nico Grubert <[email protected]>
Newsgroups gmane.comp.web.zope.silva.devel
Message-ID <[email protected]>
> We typically see such conflict errors. While they're perturbing, as
> yet we don't have any reports of actual damage (to content or
> functioning) being done.
> 
> We're hoping that with the advent of Zope 2.9 and MVCC
> (MultiVersionConcurrencyControl) these errors will cease making
> sysadmins nervous.

Hi Kit,

just a short note:

Since I read the text

   ZODB 3.4 with MVCC (multi version concurrency control) support. MVCC
   solves nearly every problem with ZODB read-conflict errors which is
   very important for high-traffic Zope sites.

on the Zope 2.8.8 release page I have tried Silva 1.5.6 with Zope 2.8.8. 
But I still get the same ZODB conflict errors.

Maybe useful for your Silva core developers:
Since I really wanted to know exactly which object causes the ZODB 
conflicts, I inspected the ZODB via "ZODB.utils.p64".

One error message in /log/event.log reads:
The corresponding error message in /log/event.log reads:
2006-08-07T11:46:25 INFO ZODB.Conflict database conflict error (oid 
0x2c, class BTrees._OOBTree.OOBTree, serial this txn started with 
0x036755a94d2334bb 2006-08-07 09:45:18.079107, serial currently 
committed 0x036755aa3a3312bb 2006-08-07 09:46:13.640509) at 
/silva156/edit/tab_status (1 conflicts, of which 0 were unresolved, 
since startup at Mon Aug  7 11:36:03 2006)

 From that error message I took the oid 0x2c in order to inspect the 
ZODB like this:

# fetch object from ZODB by a given address (e.g. 0x2c)
from Zope import app
from ZODB.utils import p64
root = app()
obj = root._p_jar[p64(0x2c)]
print obj

This returns:

   <HelpSys.APIHelpTopic.MethodDoc object at 0x41491e2c>


I took some other oids from the ZODB.Conflict errors to see what kind of 
objects cause the ZODB conflict errors. Here are some further examples:
	<Product at Annotations>
	<BTrees._OIBTree.OIBTree object at 0x4385c2fc>
	<KeywordIndex at permissions>
	<BrowserIdManager at browser_id_manager>
	<BTrees.Length.Length object at 0x42d5876c>


Regards,
    Nico
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.