[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Condor-devel] FYI: DaemonCore now manages the CollectorList (in HEAD/6.9.x)
- Date: Wed, 14 Mar 2007 13:12:27 -0700
- From: Derek Wright <wright@xxxxxxxxxxx>
- Subject: [Condor-devel] FYI: DaemonCore now manages the CollectorList (in HEAD/6.9.x)
Anyone writing or modifying a DaemonCore daemon should know about
this change i just committed to HEAD (for 6.9.3 and beyond). Here's
the CVS log message:
----------------------------
Moving responsibility to maintain the CollectorList out of every
separate daemon and into DaemonCore itself. Added DC::sendUpdates()
and ported all daemons to use this for updating collectors. For the
few daemons that need the CollectorList for something other than
updates, there's now a DC::getCollectorList() method that returns a
pointer to the object. This change is happening for 3 reasons:
- Now that all collector updates pass through DC, we have an
opportunity to do interesting things with the final update
ClassAds (e.g. this paves the way for DAEMON_SHUTDOWN expressions).
- Reduces duplicate code and shrinks the codebase.
- A step towards full DC control of updates (e.g. managing timers, etc).
[This is not user-visible at all, therefore, no version history.]
----------------------------
i already ported all existing daemons to use the new functions.
however, anyone working on DaemonCore-ifying something new (e.g.
NEST), should know about this. basically, you no longer have to
worry about maintaining a CollectorList object in your daemon, re-
creating it on a reconfig, etc, etc. if your daemon wants to send
updates to the collectors, it should just directly call:
DaemonCore::sendUpdates(int cmd, ClassAd* ad1, ClassAd* ad2 = NULL,
bool nonblock = false);
see the doc++ comments in condor_daemon_core.h for more info.
enjoy,
-derek