Doc and distutils changes for 1.0
- Documented SlotTable and AvailabilityWindow.- Minor changes in other files because of a few name changes in SlotTable and AvailabilityWindow.
Fixed bug where VM RRs in a cancelled lease were not being properly finalized (they were not being removed from the slot table, which caused trouble).
Also, Haizea was not sending shutdown commands to OpenNebula after a cancelled lease.
Add support for new ONE_AUTH in OpenNebula (instead of containing a username and password, the environment variable points to a file with this information)
Fixed: Estimating suspend/resume times with global filesystem still used old method to access requested memory
Fixed: Haizea would crash when fetching nodes for which OpenNebula had not yet collected monitoring information. This fix also has the pleasant side effect of allowing Haizea to detect new hosts added in OpenNebula without having to restart Haizea.
A few minor changes so Haizea will work with Python 2.4
Updates to svn:ignore
Setup script updates for 1.0 Beta 2
Website updates for 1.0 Beta 2
Kludge so logging will work before Manager is fully initialized.
Updated configuration file parser; datafile is now in [accounting], not in [general]
Added new options to sample multiconfiguration file
Sample configuration files are now generated by a script.
Minor documentation updates
Switched to a saner implementation for Singleton classes. Required multiple changes all around (which had the indirect side effect of making constructors less dependent on the get_config() function)
Finished utilization probes
Switched from pydoc to epydoc for HTML code documentation generation.
Added script to automatically generate probe documentation
Added chapter to manual on how to write accounting probes.
Documented accounting module. Minor fixes to default probes.
Miscellaneous pylint-induced code cleanup.
Automate generation of sample configuration files.
Added script to automatically generate probe reference appendix.
Documented accounting probes.
Updated data analysis section to use new accounting module.
Fixed whitespace that, while ok to Python, made epydoc barf.
Minor fixes for issues detected when running unit tests after last commits. Also removed several print statements that shouldn't be there.
Ignore the "html/epydoc" directory, since it is automatically generated from the code.
Modified the accounting code so information is gathered using "probes" instead of inserting hardcoded statements throughout the Haizea code. Now, collecting additional information involves writing a pluggable probe, instructing the accounting module when the probe must be run (currently this can be at every timestep, when a lease is requested, or when a lease is done). Thus, gathering additional information doesn't require modifying the core Haizea code....
Created "pluggable" package, placed pluggable policies in it. This package will also contain pluggable accounting probes.
Made persistence configurable. Documented persistence code.
- Data persistence is implemented. It still needs some work (and has to be made configurable so it can be switched off during simulations), but it's working.- Started to clean up the accounting code so it will collect data using "probes" instead of hard-coded statements.
Distributable tarball must include test config file too
Minor documentation updates.
Updated Haizea website for 1.0 Beta 1 release
Added XML documentation.
Updated copyright notices.
Updated svn:ignore
Added policy module chapter to manual
CLI and configfile appendices shouldn't be in SVN, since they are automatically generated from the code.
Update setup.py for 0.9 release
Change in source paths in Eclipse project file
Updates in sample files.
Added figures of test slottables used in unit tests
Deleting old unused files.
Merged TP2.0/0.9 branch into trunk.
Remove old unused files
Website updates for TP1.3
Updated manifest and setup.py for TP1.3
Eclipse file updates
Minor documentation fix in haizea-convert-data
Minor fix to preemption test workload
Removed analysis package; has been empty for a while and doesn't do anything
Updated sample config file for TP1.3
Documentation updates for TP1.3
Lots of small fixes to issues uncovered during pre-release testing for TP1.3
Lots of small fixes to issues uncovered by the tests and by pylint
Added XMLRPC tests
Added automated OpenNebula tests
Minor fixes
Cleaned up exception handling in rm.py
Cleaned up code and added more comments, primarily in LeaseScheduler
Sanitized and improved exception handling
- Minor fixes to tests.- Fixes of bugs uncovered by aforementioned tests.
- Added more tests (including image transfers, with and without reuse)- Cleaned up testing code
Keep track of lease state using a state machine. Added more sanity checks that throw exceptions when lease is in an inconsistent state.
More tests
Added some basic automated testing (with py.test)
Miscellaneous code refactoring
OpenNebula 1.2 support
Fixed bug in per-experiment option of haizea-convert-data
Started refactoring scheduling code into more manageable modules + classes. Note that this leaves some parts of the scheduler broken for the time being.
Beginnings of Lease state machine
Made haizea-convert-data more useful
Fixed suspend/resume override
Minor changes in slottable implementation which should reduce running time of simulations.
Fixed bug where scheduler would crash in a pretty extreme corner case: a lease has to be scheduled in the future and the only reservation at the time happens to be a ShutdownResourceReservation. Since the scheduler is looking for VMRRs that are ending, it finds none.
Multiple small bug fixes
Apparently I got my branches messed up and I don't know how to do a proper merge yet... :-P
Attributes included in a multiconfig file are now passed along to the individual configuration files.
Previous revision was missing some code for this:
Explicitly schedule cold migrations
Take enactment overhead into account by spacing OpenNebula commands (avoiding OpenNebula from getting saturated)
- Modified suspend/resume scheduling so, when doing local exclusion, suspend/resumes happening at the same time are consolidated into a single RR. - Included enactment overhead into suspend/resume scheduling- Minor fixes
Added ShutdownResource Reservation to explicitly schedule shutdowns.
Changed VM RR data structure so that instead of including information on suspend/resume VMs, they include information on pre/post RRs (this will allow us to include other types of post RRs, such as shutdowns and live migrations)
Minor changes to manual
- No need to escape $ in verbatim environments - sample.conf -> sample_trace.conf
Minor corrections to sample configuration file
Fixes some of the image transfer code, which was still using old nomenclature.
Updates for TP1.2 website
For consistency with manual, second lease in first example workload should be have a duration of 1800.
Added new figures
Fixed duplicate label in manual
Updated manual's HTML generation script to better partition the generated HTML.
Minor corrections to manual.