Split the experiment stats table into two parts. The first is the
per-experiment instantiation with aggregate data like the number of swapins, the dates and the like. The other part is the per swapin/modify stats. These are number of pnodes, links, lans, etc. Long term, I think we want more precise swapin stats, and with experiment modify in the mix, we need to have multiple stat records per experiment, but do not need to duplicate all the stuff in the other table just mentioned. To reduce the amount the table size, we cross reference the tables by index only instead of with pid,eid and the like. We use exptidx to link experiments, experiment_stats, and the new experiment_resources table. experiment_resources and stats are linked by another index in the resources table, which indicates which is the current resource row. On a modify, a new resource record is created, and the stats record updated to point to the new (latest) resource record. Web Changes: Improve showstats and showexpstats. Make them user accessible so that mere users can see stats for themselves and for their projects. No ability for mere users (PIs) to look at another person's stats. Generally, these two pages need more work, but now they are more useful. I added Show Stats to the user info and project info pages to display per-usr/proj stats. Add more info in the showstats display, but the showexpstats display is still not pretty printed; just the raw tables. Rename a few fields, add some indexes, and otherwise make some minor changes that are sure to annoy everyone.
Showing with 457 additions and 155 deletions