1. 19 Jul, 2004 7 commits
    • Russ Fish's avatar
    • Russ Fish's avatar
      Merge Tim's error handling changes to sync with the testbed/xmlrpc copy, add... · 27dc3df4
      Russ Fish authored
      Merge Tim's error handling changes to sync with the testbed/xmlrpc copy, add support for the Win32 platform.
      27dc3df4
    • Kirk Webb's avatar
      · 03921d0e
      Kirk Webb authored
      A bunch of plab interface updates that I've worked on over the last while.
      Most significant is the revamped renewal code that tries to push the leases
      out to the policy defined maximum of two months during each iteration through
      the plabrenewd daemon loop.
      
      - added python lib code to get SiteVars
      - Fixed up comments to reflect current code operation
      - revamped renewal code (again)
        - changed all times to UTC for consistency
        - removed node-level renew invocation in favor of slice-level
          - if backend module requires node-level renewals, it must handle them
            itself in the slice-level function
          - better reporting
      - set admin bit if creating svc slice
        - other updates to ensure admin bit is preserved
      - update rootball handling function naming
      - updated tryXmlRpcCmd() to accept two new sets of strings, and a callback
        function.  The strings represent Faults that either 1) indicate success,
        or 2) indicate failure.  The callback is another optional error handling
        method, allowing the caller to decide how to treat individual faults as
        they see fit.
      - updated the backend module code to take advantage of the new string
        match status identifiers in tryXmlRpcCmd()
      - completely revamped slice renewal code in mod_PLC backend
        - compare against real lease expiration data gathered direct from PLC
        We used to just infer from our originally requested lease length
        - warn when our notion of expiration doesn't match PLC's
      - added agent caching and lease expiration info caching to mod_PLC
        backend.
      03921d0e
    • Russ Fish's avatar
    • Russ Fish's avatar
      Add WIN32 #pragma statements to the hypviewer code, to shut off voluminous... · 21ef8af6
      Russ Fish authored
      Add WIN32 #pragma statements to the hypviewer code, to shut off voluminous warnings about conversion from double to float for floating point literals.
      21ef8af6
    • Robert Ricci's avatar
      Explicitly make the feedback logfile group-writable so that others in · c7f382e7
      Robert Ricci authored
      the project can swap/modify experiments.
      c7f382e7
    • Kirk Webb's avatar
      · 7b5c3146
      Kirk Webb authored
      First checkin of a document listing the various failure modes observed while
      dealing with the PLC programmatic API (some dslice ones are listed too).
      
      This is mostly a brain dump, I've probably missed a few, and will go back and
      audit swapin logs looking for more.
      7b5c3146
  2. 16 Jul, 2004 2 commits
  3. 15 Jul, 2004 7 commits
    • Kirk Webb's avatar
      · 35d31c2f
      Kirk Webb authored
      Removed a couple of unneeded lines.
      35d31c2f
    • Kirk Webb's avatar
      · dd7d003d
      Kirk Webb authored
      Updated the sensors directory Makefile to use the very nice infrastructure
      for subdirs that Eric pointed me to.  Also, canaryd will no longer
      be built if the arch isn't FreeBSD.
      dd7d003d
    • Timothy Stack's avatar
      · e9b599df
      Timothy Stack authored
      Fix experiment.info() to conditionally add the "idle" field to the
      mapping aspect.
      e9b599df
    • Leigh Stoller's avatar
      Couple of minor tweaks to make sure that experiment state events · d1a35ea9
      Leigh Stoller authored
      get sent properly; need to call TBdbfork(), and add a couple more
      event sends in libdb.
      d1a35ea9
    • Mike Hibler's avatar
      Make it work on linux too. · d87e70ee
      Mike Hibler authored
      More error checking.
      d87e70ee
    • Leigh Stoller's avatar
      5581f5e3
    • Leigh Stoller's avatar
      Overview: Add Event Groups: · ed964507
      Leigh 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.
      ed964507
  4. 14 Jul, 2004 10 commits
    • Mike Hibler's avatar
      Add a "raw" hash type ("-D raw"). Doesn't compute and compare hashes vs. · c6c4a847
      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.
      c6c4a847
    • Kirk Webb's avatar
      whoops. Forgot to check in event name changes · f31a900c
      Kirk Webb authored
      SLOTHD -> CANARYD
      f31a900c
    • Mike Hibler's avatar
    • Mike Hibler's avatar
      Note about where to get a dhclient for RHL7 · f11f29a2
      Mike Hibler authored
      f11f29a2
    • Mike Hibler's avatar
      Tweak to prevent gratuitous install activity · 71e939aa
      Mike Hibler authored
      71e939aa
    • Mike Hibler's avatar
      b6690372
    • Mike Hibler's avatar
      1. Better control net detection. · ff2335dd
      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.
      ff2335dd
    • Kirk Webb's avatar
      · 9371ad97
      Kirk Webb authored
      Oops, forgot to commit the update to configure.
      9371ad97
    • Kirk Webb's avatar
      · c0ecee80
      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.
      c0ecee80
    • Mike Hibler's avatar
      fix one last thing before I remove this file entirely · 648d37da
      Mike Hibler authored
      (replaced by dhclient version)
      648d37da
  5. 13 Jul, 2004 14 commits