1. 07 Jul, 2006 1 commit
  2. 05 Jul, 2006 2 commits
  3. 03 Jul, 2006 2 commits
  4. 30 Jun, 2006 1 commit
  5. 22 Jun, 2006 2 commits
  6. 21 Jun, 2006 1 commit
    • Leigh B. Stoller's avatar
      Munge the schemacheck code to deal with all the oddities of the way · 53c29cfa
      Leigh B. Stoller authored
      mysql 5.0 dumps the schema. What a pain in the ass.
      
      Note that "timestamp" is basically impossible since its radically
      different between 3.X and 5.X, which would break schemacheck on 3.X
      based Emulabs. Since there are only three of them in the schema, I
      changed schemadiff to not look too hard at them.
      53c29cfa
  7. 15 Jun, 2006 2 commits
    • Leigh B. Stoller's avatar
      Age out stale login entries. · 52ebace3
      Leigh B. Stoller authored
      52ebace3
    • Leigh B. Stoller's avatar
      Quick fix to get Kevin past latest problem. We have several special · c693b991
      Leigh B. Stoller authored
      users in the emulab-ops project (elabman, elabckup, operator) all with
      the same email address. elabman is treated special (since it was the
      only special user way back), but now there are lots of places that
      either need to include tests for all special users, or we need to flag
      these users in the users table.
      
      For now I made a change to genelists.in to get past the problem. I
      will address the user table at a later date.
      c693b991
  8. 07 Jun, 2006 1 commit
  9. 22 May, 2006 1 commit
  10. 16 May, 2006 2 commits
  11. 15 May, 2006 1 commit
    • Mike Hibler's avatar
      Initial "Inner Plab" support. In your NS file, you declare one node: · 9512772e
      Mike Hibler authored
      tb-set-node-plab-role $plc plc
      
      to make it the PLC node.  Then any number of other nodes are declared as:
      
      tb-set-node-plab-role $plab1 node
      
      to make them inner plab nodes.  Unlike elabinelab, there is no magic
      "tb-plab-in-elab" command which implies the topology, you put all the
      plab nodes in a LAN or whatever yourself.  This may or may not be a good idea.
      
      Anyway, these NS commands set DB state in virt_nodes and reserved much like
      elabinelab.  During swapin, the dhcpd.conf file is rewritten so that
      inner plab nodes have their "filename" set to "pxelinux.0" and their
      "next-server" set to the designated PLC node.  The PLC node will then be
      loaded/booted before anything is done to the inner-plab nodes.  After
      it comes up, the inner plab nodes are rebooted and declared as up.
      There is a new tmcd command "eplabconfig" (suggestions for a new name
      welcom!), which returns info like:
      
          NAME=plc ROLE=plc IP=155.98.36.3 MAC=00d0b713f57d
          NAME=plab1 ROLE=node IP=155.98.36.10 MAC=0002b3877a4f
          NAME=plab2 ROLE=node IP=155.98.36.34 MAC=00d0b7141057
      
      to just the PLC node (returns nothing to any other node).
      
      The implications of this setup are:
      
       * The PLC node must act as a TFTP server as we have discussed in the past.
         The TMCC info above is hopefully enough to configure pxelinux, if not
         we can change it.
      
       * The PLC node is responsible for loading the disks of inner plab nodes.
         This is implied by the setup, where we change the dhcpd.conf file before
         doing anything to the inner nodes.  Thus, once the inner nodes are
         rebooted, they will be talking pxelinux with PLC, and not to boss.
         This step is dubious, as we could no doubt load the disks faster than
         whatever plab uses can.  But it simplified the setup (and is more
         realistic!).  The alternative, which is something that might be useful
         anyway, is to introduce a "state" after which nodes have been reloaded
         but before they are rebooted.  With that, we can reload the plab nodes
         and then change the dhcpd.conf file so when they reboot they start
         talking to the PLC.
      9512772e
  12. 11 May, 2006 2 commits
    • Mike Hibler's avatar
      Minor tweaks: · 0226e083
      Mike Hibler authored
      dhcpd_makeconf.in: leave the hostname setting for plabinelab nodes
      nfree.in: make sure that if we free a plabinelab or elabinelab node,
                that we reset the dhcpd.conf file
      0226e083
    • Mike Hibler's avatar
      Initial support for plab-in-elab: · 088c8e74
      Mike Hibler authored
      * setup some fields that parallel the
        elab-in-elab ones, for modifying the dhcpd.conf file.
      
      * tb-set-node-plab-role to set a node as either 'plc' or 'node'
        used to set the DB role field above
      088c8e74
  13. 08 May, 2006 2 commits
  14. 05 May, 2006 1 commit
  15. 02 May, 2006 1 commit
  16. 28 Apr, 2006 1 commit
  17. 27 Apr, 2006 1 commit
    • Leigh B. Stoller's avatar
      Change the handling for when mysqld goes away (CR_SERVER_LOST || · 8aa8098d
      Leigh B. Stoller authored
      CR_SERVER_GONE_ERROR). Instead of bailing, sit and loop trying to
      reconnect, given that this is known to be a transient error, and we do
      not really want our daemons to go belly up during that brief time when
      the watchdog is getting it restarted. The query is then resent.
      
      For the perl version of this change, I was a lot more pedantic since
      we use this library from a zillion places. Also, there is some special
      handling cause of the mysqld watchdog which would become useless if
      the test query hung trying to reconnect to the server forever.
      
      As a side effect of this change, we should see way less email when
      mysqld goes catanoic since the new code will just loop instead of
      generating tons of errors.
      
      Might actually increase overall rebustness. On the other hand, could
      end up being a total disaster!
      8aa8098d
  18. 17 Apr, 2006 1 commit
  19. 13 Apr, 2006 1 commit
  20. 10 Apr, 2006 1 commit
  21. 09 Apr, 2006 1 commit
    • Leigh B. Stoller's avatar
      Add the following two tables to the duplicate DB that we keep on ops · 4cc95276
      Leigh B. Stoller authored
      for ongoing error work:
      
       	CREATE TABLE users (
       	  uid varchar(8) NOT NULL default '',
       	  unix_uid smallint(5) unsigned NOT NULL default '0',
       	  PRIMARY KEY  (uid),
       	  KEY unix_uid (unix_uid)
       	) TYPE=MyISAM;
      
       	CREATE TABLE experiments (
       	  idx int(10) unsigned NOT NULL default 0,
       	  pid varchar(12) NOT NULL default '',
       	  eid varchar(32) NOT NULL default '',
       	  PRIMARY KEY idx (idx),
       	  KEY  (eid,pid)
       	) TYPE=MyISAM;
      4cc95276
  22. 07 Apr, 2006 1 commit
  23. 30 Mar, 2006 1 commit
  24. 29 Mar, 2006 1 commit
    • Mike Hibler's avatar
      Ressurect the nodes table pxe_boot_path column to allow specifying · dce80595
      Mike Hibler authored
      an alternate "filename" for the dhcpd.conf file.  "Inner plabs" are likely
      to need this (to boot pxelinux for emulating the plab boot CD).
      
      dhcpd_makeconf picks up the DB field and sets the filename field accordingly.
      
      nfree will invoke dhcpd_makeconf if any node being freed has a non-NULL
      pxe_boot_path value, in order to reset it.
      dce80595
  25. 28 Mar, 2006 1 commit
  26. 23 Mar, 2006 1 commit
  27. 21 Mar, 2006 2 commits
    • Kevin Atkinson's avatar
      · d258dde6
      Kevin Atkinson authored
      Changed format of email sent to user on errors.  The error will now
      appear instead of the generic message when I am confident it is
      accurate.  The subject line will also change to reflect the cause of
      an error.
      
      Avoid sending mail to testbed-ops during failed swap related evenets
      in some cases.  It will instead be sent to a new mailing list
      testbed-errors.
      
      Added a new row in the experiment info table "Last Error:" which
      states the cause of the error, and links to a new page displaying the
      error.
      
      Made some assign/assign_wrapper errors more informative.
      
      The error (as determined by tblog) is now stored in the database in a
      more structured fashion.  This inlcudes adding a column for the session
      (in the log table) to testbed_stats to link eash swap event with the
      logs and possible the error.
      
      Other changes to the database, see sql/database-migrate.txt
      d258dde6
    • Timothy Stack's avatar
  28. 20 Mar, 2006 1 commit
  29. 15 Mar, 2006 1 commit
  30. 01 Mar, 2006 1 commit
  31. 24 Feb, 2006 1 commit
  32. 15 Feb, 2006 1 commit
    • David Johnson's avatar
      * Makeconf.in, configure, configure.in, defs-default, defs-johnsond-emulab: · 4982b9cd
      David Johnson authored
          - added a new defs var, TBROBOCOPSEMAIL
      
        * tbsetup/power_mail.pm.in:
          - add some new info to robot powerup mails
      
        * db/libdb.pm.in:
          - add a new function to determine if an experiment contains nodes of a
            given class/type
      
        * tbsetup/swapexp.in:
          - check if exp is a robot exp; that is, if it has robots or motes; if
            so, cc error msgs to TBROBOCOPSEMAIL in addition to TBOPS
      4982b9cd