[ZODB-Dev] Zope Xron with ZEO?

Loren Stafford lstafford@morphics.com
Thu, 5 Apr 2001 19:08:56 -0700


I haven't used Zope on ZEO yet, but I was thinking thru the adjustments I'd
have to make, when I started to wonder how or whether the Xron product would
work on ZEO....

When the Xron product is initialized during Zope start-up, it starts a
separate Dispatcher thread which sleeps until it has something to do, then
wakes up, executes the scheduled method, updates its schedule data structure
(which is a ZCatalog stored in ZODB), then sleeps again.

In a ZEO environment, without some specific controls, there would be a
Dispatcher thread in each client storage. All dispatchers would awaken at
the same time, try to execute the same scheduled method, and update the same
Schedule. That could get messy.

I think you only want one Dispatcher thread in the whole ZEO system.

I read that you can control product initialization to some degree thru the
existence of the environment variable ZEO_CLIENT. But I can't think how to
control initialization of specific products.

Aha! Maybe the CS configuration shouldn't be identical. Maybe only one
should have Xron installed, or maybe only one should have Xron installed in
such a way that it is loaded at initialization time.

Has anyone already tried this and come up with a workable solution?

-- Loren "Xron" Stafford