[Zope-CMF] Recipe for ReadConflictError hell

Chris Withers chris at simplistix.co.uk
Tue Dec 7 10:07:55 EST 2004


Here's a way to kill your CMF performance and grow your Data.fs hugely ;-)

1. Add a new skin folder to one of your products

2. Add this skin folder as a FSDV in your portal_skins tool, and insert 
it into one of the skin definitions your using on the properties tab.

3. Delete the skin folder

4. Restart Zope

5. View your CMF site and watch the conflict errors roll in :-(

The source of the conflict error appears to be DirectoryView's __of__ 
method. And, for whatever reason, this also seems to cause a commit to 
the ZODB for each and every request Zoep received that passes through 
the CMF machinery :-(

The solution is to remove the skin layer from the portal_skins tool's 
properties tab, made more tricky by the fact you sometimes get errors 
when visiting the skins tool when this is happening.

Is this one to be chalked down as "don't do that", or is there a bug 
lurking here that means I should report this in the collector?



Simplistix - Content Management, Zope & Python Consulting
            - http://www.simplistix.co.uk

More information about the Zope-CMF mailing list