Erik A. Dahl wrote at 2005-10-21 08:56 -0400:
>I just upgraded a client site from zope 2.6.2 to 2.8.1 (which I think  
>has ZODB 3.4.1).  After the upgrade I'm seeing very slow initial load  
>times for objects from the zeo server (much slower than before).  I  
>understand that the objects need to be loaded from disk (and  
>transfered to the client) but during the initial period (pre-cache) I  
>see the CPU spike to 100%.  This must mean it isn't a disk problem as  
>much as a server to client transfer issue.

We did not observe this behaviour...

>Here are some configuration parameters I have played with to try and  
>improve things:
>zodb_db cache-size - is this a per thread number as before or is it  
>for all threads?

Nothing changed (other than that it is not defined in the configuration
file and not in the ZMI).

> I have never seen it reach my setting.  Before the  
>cache would get to the target number quickly.  I assume this is  
>active objects (ie doesn't include ghosts?)


>zeoclient cache-size - how does this interact with the above  
>setting?  and how is it different (besides being in bytes).

The ZODB cache lives in RAM and is a Python object cache.
It is a per connection cache.

The ZEO client cache lives on disk and is a pickle cache (it
caches the object states not the objects themselves).
It is shared by all connections to a single storage (in one process).

> ...
>My database has around 350k objects.  I have zodb_db cache-size set  
>to 200k

That is quite courageous...
Watch your RAM requirements closely!

For more information about ZODB, see the ZODB Wiki:

ZODB-Dev mailing list  -

Reply via email to