On Wed, Jul 14, 2010 at 6:59 PM, Leonardo Rochael Almeida <leorochael@gmail.com> wrote:
On Wed, Jul 14, 2010 at 19:22, Benji York <benji@benjiyork.com> wrote:
[...] Not surprising really.
What could be surprising is that, since the objects are not in the object cache or the ZEO cache, how can the clients 'know' about them to request them?
And the answer is probably that there are other objects which ARE in the object cache, or the ZEO cache and that hold references (ghost objects in the case of the object-cache) to the objects in the zeo-distributed temporary storage.
Indeed. My jet lag ate that part of the story. Thanks.
So, perhaps, Sebastian can avoid a Zope restart if he finds a way to flush all caches. Flushing the object caches is easy, it's in the Control_Panel. Flushing the ZEO cache is something else. Perhaps he can run with a 0-sized ZEO cache for the TempStorages?
If this were me, I'd use a non-temporary storage and implement an expiry policy for the results cache. The bforest package would be a good start (http://pypi.python.org/pypi/zope.bforest). In fact, I would expect they already have an expiry policy in place, so they might be able to just start using a non-temporary storage right away. -- Benji York