[ZODB-Dev] mvcc related error?

Jeremy Hylton jeremy at alum.mit.edu
Tue Mar 20 10:19:45 EDT 2007


On 3/20/07, Chris Withers <chris at simplistix.co.uk> wrote:
> Dieter Maurer wrote:
> > Chris Withers wrote at 2007-3-16 08:45 +0000:
> >> ...
> >> Is there any way an object could be invalidated without there being a
> >> non-current revision to read?
> >
> > Sure (through a call to "ZODB.DB.DB.invalidate"), although usually
> > it is done only after the object changed.
>
> OK. I'm still not clear on whether what you describe is a bug or simply
> what might happen now?

The MVCC implementation might not be prepared to cope with an explicit
call to invalidate.  Yould also achieve this by calling some method on
the object, right? _p_invalidate()?  I don't remember the details.

In either case, I suspect that is a bug in the implementation, but
it's not clear if it explains your problem.

Jeremy

>
> > We are using it to cause objects to be flushed from all
> > ZODB connection caches (because we know that their "_v_" might
> > contain an inconsistent state).
> > Fortunately, we did not yet met the "loadBefore" problem you have hit.
>
> Oh, so it's just me who's lucky? ;-)
>
> >> What are the possible causes of invalidation?
> >
> > A change of the object or some explicit call for invalidation.
>
> I don't think any explicit calls are involved here...
>
> cheers,
>
> Chris
>
> --
> Simplistix - Content Management, Zope & Python Consulting
>             - http://www.simplistix.co.uk
>
>


More information about the ZODB-Dev mailing list