[Zope-CMF] Re: Recipe for ReadConflictError hell

Chris Withers chris at simplistix.co.uk
Wed Jan 12 08:46:41 EST 2005


Hi,

Dieter Maurer wrote:

>>Chris, can you reproduce on Linux?

I'm afraid I don't have time to try right now :-(

> I suggest that Chris verifies with "fsdump" which objects
> are written in these transactions ("fsdump" will tell him
> the "oid"s and the classes).

I did this by opening the data.fs in emacs, but that was a month or two 
ago and I can't remember what the actual class of objects was :-S

>   I found out that the "_v_eek" attribute
>   (from "OFS.SimpleItem.SimpleItem.raise_standardErrorMessage")
>   were written through the surrogate into the underlying
>   "FSDirectoryView" object: The "__setattr__" of
>   "DirectoryViewSurrogate" writes to both the surrogate
>   and the "FSDirectoryView" itself. This caused very
>   strange error handling behaviour for us (fixed
>   by defining a "__delattr__" along the same line as "__setattr__").
 >
> This behaviour of surrogates means that one must use "_v_" variables
> to avoid ZODB writes even though the surrogates themselves are not persistent.

Hmm, okay, but _v_eek is a _v_ attribute, so what's the problem here?
Regardless, has this been submitted as a bug anywhere?

cheers,

Chris

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


More information about the Zope-CMF mailing list