1. 05 Sep, 2006 8 commits
    • Leigh B. Stoller's avatar
      A bunch of template changes resulting from meetings last week. · 087dbfff
      Leigh B. Stoller authored
      * Add XMLRPC interface for template swapin,stoprun,startrun,swapout and
        add the appropriate wrappers to the script_wrapper on ops.
      * Allow parameter descriptions in NS files. This is probably not in its
        final form since its a bit confusing as to what has priority; something
        in the NS file or a metadata item. Anyway, you can do this in your NS
      	$ns define-template-parameter GUID "0/0" "The GUID to be analyzed"
        The rules are currently that the NS file description has priority and
        is copied to child templates, unless the user has modified a description
        via the web interface, in which case the NS file description is ignored.
        I know, sounds awful, but for the most part people are going to use the
        NS file anyway.
      * Add "clear" option when starting a new experiment run; the per
        experiment DB at the logholes are cleared. Note that this is *not* the
        default behaviour; you have to either check the checkbox on the web form
        or use the -c option to the script wrapper, or clear=yes if talking
        directly to the XMLRPC server.
      * Fix up how email is generated for template_swapin and template_create,
        so that Kevin can debug tblog/tbreport stuff, but also so that we maintain
        mail logs as before. I have made some improvements to libaudit so as to
        centralize the mail goo, and avoid duplicating all that stuff.
      * Minor fixes to the program agent so that the new environment strings are
        sent before the program agent exits and reloads them!
      * Other minor little things.
    • Jonathon Duerig's avatar
      Reverted changes to time format. Added a 'SENSOR_DETAIL' and 'SENSOR_COMPLETE"... · ceee0c13
      Jonathon Duerig authored
      Reverted changes to time format. Added a 'SENSOR_DETAIL' and 'SENSOR_COMPLETE" logging options. 'SENSOR' should now be used for high level information, 'SENSOR_DETAIL' should be used for medium level information, and 'SENSOR_COMPLETE' should be used for low-level information. If SENSOR_DETAIL logging is turned on, then SENSOR logging is also turned on. If SENSOR_COMPLETE logging is turned on, then SENSOR_DETAIL and SENSOR loggin is also turned on. All three of these levels use the 'SENSOR' prefix when outputting logging lines.
    • Leigh B. Stoller's avatar
    • Leigh B. Stoller's avatar
      Bug fix for daemon mode, which was preventing the child from really · a4d8a2a5
      Leigh B. Stoller authored
      detaching from the parent.
      Also improve the logonly mode by adding a nodelete option, to retain
      the logfile after the email is sent.
      Minor improvements to the interface.
    • Leigh B. Stoller's avatar
      Add --delete option to sync directive, to schedule a clean for the · ef320fa8
      Leigh B. Stoller authored
      next sync (similar to how it works with the archive directive).
    • Dan Gebhardt's avatar
    • Jonathon Duerig's avatar
      Streamlined logging so that only two fprintf statements are necessary. One for... · 63abdeb8
      Jonathon Duerig authored
      Streamlined logging so that only two fprintf statements are necessary. One for the prefix and one for the variable argument body. This is down from the 5 it was earlier. Also changed the format of timestamps to me more useful. Timestamps are now in a secs:millis format rather than a floating point number. And secs is seconds since the beginning of the run (rounded to the nearest second) rather than seconds since epoch.
    • Robert Ricci's avatar
      Minor bug fix - change a few debugging outputs to print unsigned ints · a77aedb7
      Robert Ricci authored
      rather than signed ones.
  2. 04 Sep, 2006 1 commit
  3. 01 Sep, 2006 11 commits
  4. 31 Aug, 2006 10 commits
    • Robert Ricci's avatar
      Performance. Removed another use of an STL structure, and replaced it · f9dc4138
      Robert Ricci authored
      with a simple malloc()ed buffer, which cut about 20% off our CPU
      Note, this could probably even be put into a statically-sized
      structrure, but Jon would have to verify this.
    • Robert Ricci's avatar
      Fix up a performance problem - some STL calls in a tight loop turned · bda1131f
      Robert Ricci authored
      out to burn too much CPU.
    • Robert Ricci's avatar
      cd to $LOGDIR before running the magent so that files like core dumps · 1f64c594
      Robert Ricci authored
      and gprof.out go to a place loghole will find them.
    • Kirk Webb's avatar
      · b6cf68ca
      Kirk Webb authored
      Change where the TMCCVNODEID environment variable gets setup.  Since
      vnodesetup is the highest common execution point in the chain (for either
      initial vserver startup, or subsequent reboot), this is the place to put it.
      The previous stages don't need it, but just putting it in rc.vinit excludes
      it from getting set during initial setup and boot.
    • Mike Hibler's avatar
      Fix a typo spotted by Keith S. · c641b15f
      Mike Hibler authored
    • Kirk Webb's avatar
      · a48210ac
      Kirk Webb authored
      Change types of latitude and longitude columns in widearea_nodeinfo to
      float (instead of float(6,5)) to fix problem with values getting adjusted
      improperly during insert.  Apparently the definition of the float(n,m)
      type is non-standard, and has changed since sql 3.x.  Regular float
      columns will do fine here.
    • Kevin Atkinson's avatar
      · 964b8d11
      Kevin Atkinson authored
      Add patch to modify Mysql.pm to allow setting the "InactiveDestroy" in
      the underlying DB handle.  Also avoid disconnecting the file handle
      explistly on DESTROY as that will be taken care of in the DESTROY
      method for the the DB handle.
      Override perl version of fork() to set InactiveDestroy in all open
      database handles in the child so that it won't send a disconnect when
      the handle is destroyed as this will also close the database handle
      for the parent.  It will also call tblog_new_child_process in the
      child process to properly inform tblog of the new process. This will
      be a NoOp if the libtblog module is not loaded.
    • Robert Ricci's avatar
      Add a signal handler that calls exit() - without this, there are some · a55eba7f
      Robert Ricci authored
      things (like finishing writing the gmon.out file when profiling) that
      don't happen when you control-c or kill the program.
    • Robert Ricci's avatar
      Behold the power of GNU make - a greatly simplified makefile. · 955b9617
      Robert Ricci authored
      It's not perfect - it doesn't rebuild the dependancy file at the
      right time, but it should be good enough for our purposes.
    • Leigh B. Stoller's avatar
      * Finish up the Commit From Template support. · 3327ba01
      Leigh B. Stoller authored
      * Export the above via the XMLRPC interface and add a wrapper function
        to the script_wrapper. This allows you do to this on ops:
      	cd /proj/testbed/templates/10023/1
              Edit some files
        Which creates a new template, using the current directory to infer
        the template. Otherwise, provide the template GUID on the command line.
        Hmm, maybe this should be called template_modify? Either way, the
        name does not quite match
      * Export template_export via the XMLRPC wrapper. This allows you to
        export a template (instance) record from the command line on ops.
      	cd /proj/testbed/templates/10023/1
              template_export -i 12
              Exported to /proj/testbed/export/10000/3/12
        Which exports the template record for instance number 12. Again, the
        GUID is infered, but you can specify one on the command line. The export
        directory is printed so you know where it went. Note that export does
        *not* populate a DB on ops with the old DB data.
  5. 30 Aug, 2006 6 commits
    • Kirk Webb's avatar
      · 210d1a85
      Kirk Webb authored
      A node update bugfix and a change to the way nodes with more than two
      changed attributes are handled.  A single message is now sent detailing
      which nodes need to be looked at, and such nodes to not stop the rest from
      updating normally during that run.  Previously the nodes with multiple changes
      had to be handled first, then the update script had to be run after that to
      catch everything.
    • Jonathon Duerig's avatar
      Cleaned up and added a couple of lines of comment about what 'Send' and 'Ack'... · fc042aca
      Jonathon Duerig authored
      Cleaned up and added a couple of lines of comment about what 'Send' and 'Ack' really mean. All that really matters is distinguishing between outgoing packets and incoming packets. 'Send' and 'Ack' are unfortunate names reflecting my previous muddled thinking about this. So for 'Send' read outgoing, and for 'Ack', read incoming. A low-priority task is to change the naming to reflect this semantic change.
    • Jonathon Duerig's avatar
    • Robert Ricci's avatar
      Added a log message to catch gaps in packet sequence number - ie. we · 5517884a
      Robert Ricci authored
      didn't get one or more packets from libpcap. I have one trace on
      PlanetLab that does this a lot, so it could be a sign of a problem -
      like not checking libpcap freqeuently enough. A pcapper process
      running at the same time did get the packets...
    • Kirk Webb's avatar
      · dc8215dd
      Kirk Webb authored
      Change the mode used to create log files to allow world read access.
      We have determined that there really isn't any risk in doing so.  This will
      stop rsync/loghole from complaining when transfering data from plab nodes.
      It was failing to transfer some log files created as root.
    • Leigh B. Stoller's avatar
      Add a new trigger to handle the case where old and new images are · 195b1a3e
      Leigh B. Stoller authored
      mixed togther, and port registrations are not made. The one case
      currently handled is when the syncserver node goes ISUP, but has not
      reported its port. In this case, it must be an old image and so we
      place a port registration in for it.
  6. 29 Aug, 2006 4 commits
    • Dan Gebhardt's avatar
      Added support for two types of measurement scheduling: 'forever' and 'temp' · a49c39b5
      Dan Gebhardt authored
      A user can set the duration of a measurement set with the -d option in
      testsend.pl and manager.pl . The change occurs for the given number of
      seconds. After expiration, the old measurement period is used. The logic
      behind when/how to change is fairly complex - see bgmon.pl for more details.
    • Robert Ricci's avatar
    • Kirk Webb's avatar
      · a46202e7
      Kirk Webb authored
      bump up plab rootball version
    • Mike Hibler's avatar
      Revised version of "max delay" packet dropping in dummynet. · f0b988f1
      Mike Hibler authored
       * Delay specified in ticks.
       * Drop performed as packets were leaving the delay queue (i.e., leaving
         dummynet).  This is more accurate in terms of calculating time spent
         in dummynet, and can be used with all strategies of BW/delay shaping
         (constant values, distributions, table lookup), but required that
         ultimately-dropped packets get put on the BW queue, changing the timing
         of things.
       * Delay specified in milliseconds.
       * Drops perfromed as packets enter the bandwidth queue (i.e., arrive
         in dummynet).  Here drops are based on estimates of how long a packet
         would spend in dummynet and thus only works with constant delay/BW
         shaping characteristics, but does more accurately reflect queuing
      The estimate is done by looking at the length in bytes of the bandwidth
      queue (including the candidate packet) for the pipe, determining how long
      it will take to transmit that many bytes, and then adding the delay value
      for the pipe.