- 11 Feb, 2002 5 commits
-
-
Leigh B. Stoller authored
a node is not allocated (thus putting the .acl and .run file into the wheel group when capture creates them), return the value of the config variable TBADMINGROUP (which is flux for us). This makes it easier for admin people to look at free nodes.
-
Robert Ricci authored
STDOUT, and move around some lines to avoid undefined value warnings.
-
Leigh B. Stoller authored
since that screws up opera (and is incorrect anyway). Add wrapper code to the docwrappers to include the html header/trailer code when doing a printable version, and include the proper style sheet.
-
Leigh B. Stoller authored
whatever other maintenance is required.
-
Leigh B. Stoller authored
naming scheme was not very intuitive and the names sucked. Also, I want to increase the frequency with which we run the backups, and I want to implement an automated roll so that we only keep about a months worth of history around. Anyway, the new approach is to open up the index file and see what the name of the current update file is. It has a numeric extension. Rename the base log to base.XXX, and then snapshot the DB into backup.XXX So, the combination of update.XXX and base.XXX is the DB history since the last time the script was run. The file backup.XXX corresponds to the DB at this point in time. To restore (or track the changes of) a DB, simply take backup.XXX and apply the changes that are stored in update.XXX+1 (which are the changes made since backup.XXX was made). This should give you a DB that is the same as backup.XXX+1. You can go back further, and just apply all the subsequent update.XXX files.
-
- 08 Feb, 2002 12 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
very useful by itself anyway.
-
Leigh B. Stoller authored
supporting autocreating and autoloading images. The imageid form now sports a field to specify a nodeid to create the image from; If set, the backend create_image script is invoked. Thats the easy part. Slightly harder is autoloading images based on the osid specified in the NS file. To support this, I have added a new DB table called osidtoimageid, which holds the mapping from osid/pctype to imageid. When users create images, they must specify what node types that image is good for. Obviously, the mappings have to be unique or it would be impossible to figure it out! Anyway, once that image mapping is in place and the image created, the user can specify that ID in the NS file. I've changed os_setup to to look for IDs that are not loaded, and to try and find one in the osidtoimageid. If found, it invokes os_load. To keep things running in parallel as much as possible, os_setup issues all the loads/reboots (could be more than a single set of loads is multiple IDs are in the NS file) at once, and waits for all the children to exit. I've hacked up os_load a bit to try and be more robust in the face of PXE failures, which still happen and are rather troublsesome. Need an event system! Contained in this revision are unrelated changed to make the OS and Image IDs per-project unique instead of globally unique, since thats a pain for the users. This turns out to be very messy, since underneath we do not want to pass around pid/ID in all the various places its used. Rather, I create a globally unique name and extened the OS and Image tables to include pid/name/ID. The user selects pid/name, and I create the globally unique ID. For the most part this is invisible throughout the system, except where we interface with the user, say in the web pages; the user should see his chosen name where possible, and the should invoke scripts (os_load, create_image, etc) using his/her name not the internal ID. Also, in the front end the NS file should use the user name not the ID. All in all, this accounted for a number of annoying changes and some special cases that are unavoidable.
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
page.
-
Leigh B. Stoller authored
Netscape and IE both recognize it: <input type=readonly ... > The correct way is: <input readonly type=text ...> Hmm.
-
Leigh B. Stoller authored
Fix up SUEXEC and TBERROR error handling so that <XMP> tags are not included in the email message! Add CHECKURL() function (which will eventually replace VERIFYURL()) which returns error strings instead of calling USERERROR. This is in support of new forms code. Add CHECKPASSWORD() function; same code was in three different places. This version returns the error string from checkpass.
-
Leigh B. Stoller authored
finished.
-
Leigh B. Stoller authored
file. Controls whether we spit out the keywords and the emu page, since we do not want anyone but else getting the links.
-
Leigh B. Stoller authored
Also moved the picture to make the text look better.
-
Leigh B. Stoller authored
gets spit out a lot in all of the pages (http or https). Refine fonts and little bits in the banner.
-
- 07 Feb, 2002 4 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
Robert Ricci authored
retry (or warn) about nodes that get stuck more than once.
-
Robert Ricci authored
-
- 04 Feb, 2002 1 commit
-
-
Robert Ricci authored
Also implemented a simple cache for previously-queried keys. Now stores the keys found in, say, nodes.node_id, so when another table references this key, we don't need to do another database query. This improves performance significantly, and is nicer to the databse server.
-
- 01 Feb, 2002 6 commits
-
-
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.
-
Leigh B. Stoller authored
return mount specs for people in the project instead of the group. Harmless, since the mounts would fail as long as exports_setup was doing the right thing.
-
Mike Hibler authored
understanding of how mountd operates. Things that should be fixed: 1. It iterates over every node calculating what directories are exported, what FSes they are on, etc. Most of that work only needs to happen per experiment. 2. The algorithm to determine what FS a directory is on is a hack. I just take the first component of the path provided. As long as we mount all our FSes at the top level and configure with canonical pathes, this is ok. Other solutions require calling out to the ops node to get actual mount info. 3. Once shared experiments are revived, the code to determine exported directories will need to change. The algorithm for computing the exports lines should still be correct.
-
Robert Ricci authored
-
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.
-
Leigh B. Stoller authored
Started from scratch! Much simpler now that most of the information is stored in the virt_nodes and virt_lans table.
-
- 31 Jan, 2002 4 commits
-
-
Jay Lepreau authored
-
Robert Ricci authored
the Intels take so long to apply changes, 20 seconds isn't long enough when multiple snmpit are run simultaneously.
-
Ian Murdock authored
-
Ian Murdock authored
-
- 30 Jan, 2002 4 commits
-
-
Robert Ricci authored
en/disabling of ports through other methods, like creating and deleting VLANs.)
-
Chad Barb authored
-
Leigh B. Stoller authored
passed along as a URL argument.
-
Leigh B. Stoller authored
-
- 29 Jan, 2002 4 commits
-
-
Robert Ricci authored
A simple little script to find links/lans that cross between switches, and print them out (including which switches they use, and how many members they have on each switch.)
-
Ian Murdock authored
-
Ian Murdock authored
-
Ian Murdock authored
-