- 30 Oct, 2003 1 commit
-
-
Leigh B. Stoller authored
proper error.
-
- 01 Oct, 2003 1 commit
-
-
Leigh B. Stoller authored
-
- 30 Sep, 2003 2 commits
-
-
Leigh B. Stoller authored
protocol for external scripts. Now that Mike has been successfully embarrased in front of everyone, I will document said protocol: $status < 0 - Fatal error. Email output to tbops. $status = 0 - Everything okay! $status > 0 - Expected error. Give results to user only. Of course, only 4 scripts have been adapted to the new protocol, but thats okay. I'm sure Mike will trip over them all eventually.
-
Leigh B. Stoller authored
plus a lock field. The lock field was a simple "experiment locked, go away" slot that is easy to use when you do not care about the actual state that an experiment is in, just that it is in "transition" and should not be messed with. The other two state variables are "state" and "batchstate". The former (state) is the original variable that Chris added, and was used by the tb* scripts to make sure that the experiment was in the state each particular script wanted them to be in. But over time (and with the addition of so much wrapper goo around them), "state" has leaked out all over the place to determine what operations on an experiment are allowed, and if/when it should be displayed in various web pages. There are a set of transition states in addition to the usual "active", "swapped", etc like "swapping" that make testing state a pain in the butt. I added the other state variable ("batchstate") when I did the batch system, obviously! It was intended as a wrapper state to control access to the batch queue, and to prevent batch experiments from being messed with except when it was really okay (for example, its okay to terminate a swapped out batch experiment, but not a swapped in batch experiment since that would confuse the batch daemon). There are fewer of these states, plus one additional state for "modifying" experiments. So what I have done is change the system to use "batchstate" for all experiments to control entry into the swap system, from the web interface, from the command line, and from the batch daemon. The other state variable still exists, and will be brutally pushed back under the surface until its just a vague memory, used only by the original tb* scripts. This will happen over time, and the "batchstate" variable will be renamed once I am convinced that this was the right thing to do and that my changes actually work as intended. Only people who have bothered to read this far will know that I also added the ability to cancel experiment swapin in progress. For that I am using the "canceled" flag (ah, this one was named properly from the start!), and I test that at various times in assign_wrapper and tbswap. A minor downside right now is that a canceled swapin looks too much like a failed swapin, and so tbops gets email about it. I'll fix that at some point (sometime after the boss complains). I also cleaned up various bits of code, replacing direct calls to exec with calls to the recently improved SUEXEC interface. This removes some cruft from each script that calls an external script. Cleaned up modifyexp.ph3 quite a bit, reformatting and indenting. Also fixed to not run the parser directly! This was very wrong; should call nscheck instead. Changed to use "nobody" group instead of group flux (made the same change in nscheck). There is a script in the sql directory called newstates.pl. It needs to be run to initialize the batchstate slot of the experiments table for all existing experiments.
-
- 04 Sep, 2003 1 commit
-
-
Mac Newbold authored
-
- 30 Jul, 2003 1 commit
-
-
Leigh B. Stoller authored
Remove more old commented out code from modifyexp.
-
- 29 Jul, 2003 1 commit
-
-
Leigh B. Stoller authored
changes to the backend a while ago, but the form changes never got made cause of the ongoing delay in the new form commit. So, you can preload a batch experiment now.
-
- 22 Jul, 2003 1 commit
-
-
Mac Newbold authored
-
- 21 Jul, 2003 1 commit
-
-
Mac Newbold authored
-
- 17 Jul, 2003 2 commits
-
-
Mac Newbold authored
-
Mac Newbold authored
Lots of changes to the form, both functional and aesthetic. See the testbed ops mail logs for a list of all of them, and the rationale. Corresponding updates to the showexp "edit meta-data" stuff, so that it gets all the same error checks as the real form. Also some backend changes in batchexp to pass through all the new form values.
-
- 09 Jul, 2003 1 commit
-
-
Leigh B. Stoller authored
can swapmod an experiment created this way, think again ...
-
- 08 Jul, 2003 1 commit
-
-
Leigh B. Stoller authored
-
- 03 Jul, 2003 1 commit
-
-
Leigh B. Stoller authored
time to fix it.
-
- 31 May, 2003 1 commit
-
-
Mac Newbold authored
-
- 22 May, 2003 1 commit
-
-
Leigh B. Stoller authored
experiments look more like regular experiments. Batch mode experiments can now be preloaded and swapped. When preloaded, they go into a "Pause" state. Swapping a batch mode experiment in puts them into the "posted" state so the batch daemon will see them. Swapping out a batchmode experiment does the expected; it puts them back into the Pause state. Terminating a batch mode experiment does the expected; its gone. When a batch mode experiment finishes normally, it goes back into the pause state, which allows batches to be reinjected as many times as Eric likes.
-
- 24 Apr, 2003 2 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
- 09 Apr, 2003 1 commit
-
-
Chad Barb authored
Changed form respit error message: "no such group" --> "group 'foo' is not in project 'bar'".
-
- 26 Mar, 2003 1 commit
-
-
Leigh B. Stoller authored
-
- 25 Mar, 2003 1 commit
-
-
Leigh B. Stoller authored
the newimageid_explain front page, since I had actually moved most of that text into the tutorial a couple of months ago. I moved the rest of the text over, and changed the links to point to the short form. Added a link at the top of the short form pointing to the tutorial section, and for admin types, a link to the long form.
-
- 20 Mar, 2003 1 commit
-
-
Leigh B. Stoller authored
case that they should use the subgroup, and since they also tend to be in the clueless portion of our users, give them some help. Jay asked for this months ago, and I always try to respond in a timely manner when the boss asks for something!
-
- 03 Oct, 2002 1 commit
-
-
Chad Barb authored
Changed Netbuild GUI text at the top to be a bit clearer, Text will also be different for the page when NetBuild sends them to it.
-
- 12 Sep, 2002 1 commit
-
-
Chad Barb authored
Changed /tmp file saving to be based on a randomly generated number, not UID. This way, POSTing NSFiles from netbuild doesnt require being logged in (since Macs dont seem to want to send the appropriate login cookies along for the Java POST.) This should fix the Mac OS X problem. Maintained backward compatability with old methods.
-
- 10 Sep, 2002 1 commit
-
-
Chad Barb authored
Improved error reporting style.. also added image for uky, though right now it is the same as the standard image (will edit it soon.)
-
- 16 Aug, 2002 1 commit
-
-
Leigh B. Stoller authored
-
- 12 Aug, 2002 1 commit
-
-
Robert Ricci authored
nsfile CGI variable.
-
- 07 Jul, 2002 1 commit
-
-
Leigh B. Stoller authored
-
- 28 Jun, 2002 1 commit
-
-
Leigh B. Stoller authored
-
- 16 Jun, 2002 1 commit
-
-
Leigh B. Stoller authored
-
- 13 Jun, 2002 1 commit
-
-
Chad Barb authored
Changed netbuild to use POST, rather than GET. This should alleviate some of the truncation problems we've been having, and also is a bit cleaner looking to the client. The applet posts to nssave.php3, which writes the ns file to /tmp/$uid-$hash.nsfile The applet then launches beginexp/php3 in a new browser window, passing it the $hash. It can then pass that $hash to spitnsdata.php3, or build "/tmp/$uid-$hash.nsfile" as $nsfile (the NS file to use in expt creation.) There are, as of yet, no file size restrictions, nor is there a mechanism to clean up old nsfiles (which really only need to stick around for a short while, <<1hr.)
-
- 29 May, 2002 1 commit
-
-
Leigh B. Stoller authored
with "immediate" mode (not batchmode!). Basically, do a full experiment setup minus swapin. This gives you all the DB state so that it can be viewed in the web page and terminated/swapped/visualized.
-
- 17 Apr, 2002 1 commit
-
-
Leigh B. Stoller authored
-
- 16 Apr, 2002 1 commit
-
-
Leigh B. Stoller authored
created.
-
- 02 Apr, 2002 1 commit
-
-
Leigh B. Stoller authored
experiment log file to the user as it gets generated. The web page does not redraw, it just never exits until the backend sees that the experiement transition is done, and then it exists, which terminates the script. I added a DB field to hold the logfile name and some routines in libdb, with the idea that this might be more generally useful at some point. Next time you create an experiment, look for the last sentence, and click on "realtime".
-
- 12 Mar, 2002 1 commit
-
-
Leigh B. Stoller authored
-
- 05 Mar, 2002 1 commit
-
-
Leigh B. Stoller authored
-
- 22 Feb, 2002 1 commit
-
-
Leigh B. Stoller authored
link on the Begin Experiment page, remove the admin only test, and make the palette bigger.
-
- 20 Feb, 2002 1 commit
-
-
Leigh B. Stoller authored
-
- 14 Feb, 2002 1 commit
-
-
Leigh B. Stoller authored
when backing up (cause of an error that needs to be fixed) since not all browsers handle this the same. Instead, redraw the form with all of the original info and a list of error messages at the top. Conceptually simple change, but it turns out to be a pain to implement since you need to combine the form and processing code in one page (well, its just a lot easier to do that), and then change all of the forms to deal with a "default" value. That is, each different kind of input tag (text, radio, select, checkbox, etc.) requires slightly different changes to do that. Lots of forms, lots of entries on the forms, and its a long slow tedious process. Much nicer though, although the code is a bit harder to grok. At the same time, I added a lot more sanity checks of the information being passed in. The other change is to deal with how browsers handle the back button on a form thats been properly submitted. Not all browsers use the cache directives the same, and I was often typing back, only to have some form get reposted. Thats a major pain in the butt. The way to deal with that is to have the processor send out a Location header, which modifies the browser history so that the post is no longer in the history. You back up straight to the unposted form (if its in the cache). I've done this to only some forms, since its a bit of a pain to rework things so that you can jump ahead to a page that spits out the requisite warm fuzzies for the specific operation just completed. I've done newproject, joinproject, update user info, newimageid, and newimaged_dz forms.
-