- 15 Jul, 2004 3 commits
-
-
Mike Hibler authored
More error checking.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
set g1 [new EventGroup $ns] $g1 add $link0 $link1 $ns at 60.0 "$g1 down" See the new advanced tutorial section on event groups for a better example. Changed tbreport to dump the event groups table when in summary mode. At the same time, I changed tbreport to use the recently added virt_lans:vnode and ip slots, decprecating virt_nodes:ips in one more place. I also changed the web interface to always dump the event and event group summaries. The parser gets a new file (event.tcl), and the "at" method deals with event group events by expanding them inline into individual events sent to each member. For some agents, this is unavoidable; traffic generators get the initial params in the event, so it is not possible to send a single event to all members of the group. Same goes for program objects, although program objects do default to the initial command now, at least on new images. Changed the event scheduler to load the event groups table. The current operation is that the scheduler expands events sent to a group, into a set of distinct events sent to each member of the group. At some point we proably want to optimize this by telling the agents (running on the nodes) what groups they are members of. Other News: Added a "mustdelay" slot to the virt_lans table so the parser can tell assign_wrapper that a link needs to be delayed, say if there are events or if the link is red/gred. Previously, assign_wrapper tried to figure this out by looking at the event list, etc. I have removed that code; see database-migrate for instructions on how to initialize this slot in existing experiments. assign_wrapper is free to ignore or insert delays anyway, but having the parser do this makes more sense. I also made some "rename" changes to the parser wrt queues and lans and links. Not really necessary, but I got sidetracked (for several hours!) trying to understand that rename stuff a little better, and now I do.
-
- 14 Jul, 2004 10 commits
-
-
Mike Hibler authored
a signature file, rather it compares the actual data in the image file vs. what is on a disk. Mostly a debugging option, trying to find the source of a disk corruption problem when loading images with FBSD 4.10. Teach it about relocations, and (optionally) have it not compute hashes for blocks which involve relocations, since those areas will likely always differ in the image and disk. The default behavior is to have it look at everything as before, use -N to have it skip relocation areas.
-
Kirk Webb authored
SLOTHD -> CANARYD
-
Mike Hibler authored
-
Mike Hibler authored
-
Mike Hibler authored
-
Mike Hibler authored
-
Mike Hibler authored
No longer rely on looking at kernel boot time messages and extracting a hardware signature to determine the nodetype to then determine the control net. Now we just DHCP on all interfaces and decree that the interface that answers is our control net interface. An extraordinary number of sleezy tricks were needed to get FBSD4, FBSD5, and RHL to DHCP on all interfaces without changing any standard scripts. For now, the nodetype/cpuspeed/chipset scripts still exist for the benefit of healthd, which uses the output of nodetype to determine what kernel module to load. We should fix this. Side-effect: pump, the old RHL DHCP client, is history! For older RHL releases, you will need a version of dhclient. Side-effect: in Linux, all non-control net interfaces are left up but without a legit IP address. This is a consequence of dhclient. In FBSD, it was trivial to clean this up, RHL will take a little more work. Up or down, it shouldn't matter. 2. Add an mfs-install make target, a scaled-down version of the client install. Added a mandatory DESTDIR check so you don't accidentally install in the wrong place on boss.
-
Kirk Webb authored
Oops, forgot to commit the update to configure.
-
Kirk Webb authored
Split off the feedback metric gathering, alerting, and reporting code from slothd and slammed it into a new daemon: canaryd. There is currently quite a bit of code duplication between slothd and canaryd. Sometime in the future I need to go back and extract the common portions into a module.
-
Mike Hibler authored
(replaced by dhclient version)
-
- 13 Jul, 2004 14 commits
-
-
Robert Ricci authored
-
Mike Hibler authored
(only problem is, tmcd doesn't allow them...) 1. tmcc (the perl version) has -D flag to support "direct" unproxied call 2. watchdog has a -n flag to support "non-proxied" operation 3. libtmcc has a "noproxy" option, can be set globally or per-call Oh, and made a per-call version of the "nocache" option for libtmcc: cleaned up a hack in the watchdog.
-
Mike Hibler authored
2. Support timeout in tmcc proxy, so proxy doesn't hang when it doesn't get a UDP reply from the master tmcd. Unfortunately, the fast path here involved introducing a setjmp/longjmp, which I am not too thrilled about (worried about Windows support...) There are other ways (e.g., socket timeouts) to do this, but would have required significant overhaul of the code. 3. Clean up some minor, unimportant logic errors
-
Mike Hibler authored
by other means.
-
Mike Hibler authored
-
Mike Hibler authored
-
Mike Hibler authored
"tmcctest noreply" - does not send an reply back "tmcctest delayreply <N>" - delay reply by <N> seconds "tmcctest splitreply" - TCP only, send reply back in pieces with delay between the last two can only be done in debug mode. This is a quicky hack for testing tmcc timeouts.
-
Leigh B. Stoller authored
from the DB when the routertype is "static" since those images are likely to not have ddijk support on them. Newer images will have ddijk, and so will compute the routes themselves; do not send them back. Note that static-old implies that nodes will get the routes no matter what, although old images will probably barf if gets that; I don't view this as a problem since very people are going to request static-old.
-
Leigh B. Stoller authored
experimental nodes from the topomap. "static" routing now implies ddijk routing, but since old images won't have any of that support, we still have to generate routes and store them in the DB. However, only doing this when the number of nodes in the experiment is less than 250; otherwise print a warning and refuse to generate the routes. Also add "static-old" so that people can request/force old static routing no matter how big the experiment.
-
Leigh B. Stoller authored
static-old to use original centralized static routing.
-
Leigh B. Stoller authored
ipassign_wrapper no longer does that. Revert back to always invoking the static route calculator (which figures out what to do). Remove the stiff about generating a linkmap, which was an interim measure for ddijk routing; now done with gentopfile.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
For new distributed routing support, must first run this script as root to generate a data file for each existing experiment. sudo sql/gentopmaps.pl
-
Leigh B. Stoller authored
-
- 12 Jul, 2004 13 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
client to wait for an experiment to reach a desired state (active, swapped, etc). Use the optional timeout parameter to terminate the wait early. See the documentation for a full descriptione of the interface. This is implemented using the just added "poll" interface to the python event interface library
-
Leigh B. Stoller authored
will return this error code instead of RESPONSE_ERROR.
-
Leigh B. Stoller authored
is currently only for use by the RPC server.
-
Leigh B. Stoller authored
between the experiment swapping and the RPC server.
-
Leigh B. Stoller authored
single event at a time, and process that event inline, rather then within a callback.
-
Leigh B. Stoller authored
this field but forgot to removed it from the create file (it never went into the migrate file).
-
Timothy Stack authored
-
Leigh B. Stoller authored
-