[ZODB-Dev] ZEO 2 : cache twiddling

Guido van Rossum guido@python.org
Thu, 21 Nov 2002 10:58:27 -0500


> > The first time I do something that involves reading from one of the 
> > mounted storages, I have to wait an _age_. What's happening? Is the 
> > ClientCache filling itself with all objects it can before it does 
> > anything? Certainly much slower than before.
> 
> Uh-oh.  I wonder if you're accidentally sharing one cache between three 
> storages.  This is bound to break very badly, and there's currently 
> nothing that detects this condition.  Could you "ls -l" the directory 
> where your cache files are?  It's usually the same directory that holds 
> Data.fs.

How could this happen?  Persistent caches have different names based
on the storage name and client name.  Non-persistent caches use
tempfile.

> Of course, I would expect ZODB to shatter in a million pieces if
> this were the case, rather than chug along with some occasional
> breakage.  Hmph.

Not if the oid sets are distinct (dunno if they are).

--Guido van Rossum (home page: http://www.python.org/~guido/)