1. 12 Oct, 2013 1 commit
  2. 17 Oct, 2012 1 commit
  3. 24 Sep, 2012 1 commit
    • Eric Eide's avatar
      Replace license symbols with {{{ }}}-enclosed license blocks. · 6df609a9
      Eric Eide authored
      This commit is intended to makes the license status of Emulab and
      ProtoGENI source files more clear.  It replaces license symbols like
      "EMULAB-COPYRIGHT" and "GENIPUBLIC-COPYRIGHT" with {{{ }}}-delimited
      blocks that contain actual license statements.
      
      This change was driven by the fact that today, most people acquire and
      track Emulab and ProtoGENI sources via git.
      
      Before the Emulab source code was kept in git, the Flux Research Group
      at the University of Utah would roll distributions by making tar
      files.  As part of that process, the Flux Group would replace the
      license symbols in the source files with actual license statements.
      
      When the Flux Group moved to git, people outside of the group started
      to see the source files with the "unexpanded" symbols.  This meant
      that people acquired source files without actual license statements in
      them.  All the relevant files had Utah *copyright* statements in them,
      but without the expanded *license* statements, the licensing status of
      the source files was unclear.
      
      This commit is intended to clear up that confusion.
      
      Most Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the Affero GNU General Public License, version 3
      (AGPLv3).
      
      Most Utah-copyrighted files related to ProtoGENI are distributed under
      the terms of the GENI Public License, which is a BSD-like open-source
      license.
      
      Some Utah-copyrighted files in the Emulab source tree are distributed
      under the terms of the GNU Lesser General Public License, version 2.1
      (LGPL).
      6df609a9
  4. 21 Sep, 2011 1 commit
  5. 29 Mar, 2010 1 commit
    • Robert Ricci's avatar
      Make (almost) all comparisons case-sensitive · 7737d85d
      Robert Ricci authored
      This was suggested by Pat Gunn - mysql is generally case-insensitive,
      so making these comparisons case-sensitive is fairly fragile; we're
      more likely to be uneccessarily pedantic by being case sensitive than
      we are to be overly permissive by being case insensitive.
      7737d85d
  6. 12 Jul, 2007 1 commit
    • Russ Fish's avatar
      Check that the inner elab db schema isn't out of date wrt the outer one, · b54ae4da
      Russ Fish authored
        since we import a bunch of dumped db state from the outer to the inner db.
        Added/removed columns in the schema misalign row data, causing much chaos.
      
      tbsetup/elabinelab.in - Dump and send the outer db schema with the db state.
        Runs mysqldump just like schemacheck does.
      
      tmcd/common/config/rc.mkelab - Add the schema check using schemadiff.
      
      utils/schemadiff - Add an option to ignore table creates and drops.
      b54ae4da
  7. 25 Mar, 2007 1 commit
  8. 21 Jun, 2006 1 commit
    • Leigh Stoller's avatar
      Munge the schemacheck code to deal with all the oddities of the way · 53c29cfa
      Leigh 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
  9. 27 Apr, 2006 2 commits
  10. 31 May, 2005 1 commit
  11. 28 Apr, 2003 1 commit
  12. 26 Jul, 2002 1 commit
  13. 07 Jul, 2002 1 commit
  14. 17 Apr, 2002 1 commit
  15. 04 Mar, 2002 1 commit
  16. 01 Mar, 2002 1 commit
  17. 01 Feb, 2002 3 commits
    • Robert Ricci's avatar
      Added some checks for key types, etc. that are currently not used in · 6d6d755b
      Robert Ricci authored
      the testbed database anywhere. Otherwise, they could accidentally be
      mistaken for columns.
      
      Now, all table options (the 'create_definition' rule in the MySQL
      documentation for 'CREATE TABLE') are recognized.
      6d6d755b
    • Robert Ricci's avatar
    • Robert Ricci's avatar
      New script: schemadiff - a script to sync up the schemas of two · 83341399
      Robert Ricci authored
      databases. This script is not quite ready for usage - I've done some
      testing, but more testing shuld be done before it's widely used.
      
      From the usage message:
      Prints on stdout a set of SQL commands to change the database
      from file1 so that it has the same schema as the database from
      file2 (same argument order as diff)
      
      The files given are the output of mysqldump for the two databases -
      the dump ouput can contain oly column definitions, or it can contain
      row information (which is ignored.)
      
      This script can find and fix: created/dropped tables, created/dropped
      columns, columns that have had type chages, renamed columns, changes
      in primary and other (non-primary) keys. It keeps columns in order
      when creating new tables and adding columns.
      
      There a few things that I still want to do with this script:
      
      Make a framework for populating columns. For example, if column 'foo'
      is added, it would look in some location for a script that would
      populate this column.
      
      Create a wrapper that connects to the database to be updated, backs it
      up, locks all tables, applies the changes, and can recover if
      something goes wrong.
      
      Add a 'safe mode' (which would be the default), which won't remove
      columns or tables.
      
      There are a few caveats:
      
      Columns that have been _both_ renamed and had their type changed will
      be dropped and re-created, since it's impossible to detect this case.
      
      There may be some ordering issues. For example, the primary key for a
      table may need to be dropped before you can allow a column that used
      to be in the primary key in the primary key to contain NULLs.
      
      Will only work in one direction - a master-slave type relationship. If
      used between databases that have _both_ been changed, changes in the
      database being updated first will be lost.
      83341399