Update NEWS file for the 0.2.6 release
[ganeti-local] / NEWS
diff --git a/NEWS b/NEWS
index 8454914..79dfd7a 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,78 @@
 Ganeti-htools release notes
 ===========================
 
+
+Version 0.2.6 (Mon, 26 Jul 2010)
+--------------------------------
+
+Exactly three months since the last release. Many internal changes, plus
+a couple of important changes in the balancing algorithm.
+
+First, the balancing may now introduce N+1 errors, if this solves other,
+more critical problems. For the moment, this means that moving instances
+away from offline nodes is allowed even if it creates N+1 errors, and
+that means evacuation can be done in more cases.
+
+Second, the scoring for N+1 has changed. In previous versions, it simply
+counted the number of failing N+1 nodes, which means moving an instance
+away from a N+1 failed node (but without the node 'clearing' the N+1
+status) was not reflected in the cluster score. As such, the balancing
+algorithm managed to clear N+1 errors only sometimes, since usually it
+takes more than one move for this, and the first prerequisite move was
+not 'rewarded' appropriately and thus it was not selected. Now, it is
+possible to fix many more error cases than before: on a simulated 40
+node cluster full with instances (symmetrically allocated on all nodes),
+around five nodes can be evacuated before N+1 errors can be solved,
+whereas 0.2.5 could evacuate at best one node.
+
+There were some other internal changes to the scoring algorithm, such
+that now the metrics have associated weights, and they are not all of
+the same importance anymore. As of now, the only change is that offline
+instances have a higher weight, which should favour proper node
+evacuations.
+
+Among the other changes:
+
+- fixed the hspace KM_POOL_* metrics, which were returned as the final
+  state and not as the delta between the initial and final states
+- fixed hspace handling of N+1 failing clusters: before, it used to
+  generate a 'fake' response, and the structure of this response was not
+  always in sync with the real responses, leading to missing items;
+  currently it proceeds correctly through the code (skipping the
+  computation), and uses the same display mechanisms as the normal case
+- fixed hscan exit code for RAPI failures: previously it finished with
+  success even if all the clusters failed, which was creating issues
+  with the live-test script; now it exits with exit code 2 for RAPI
+  failures (unfortunately this is still not optimal as LUXI failures
+  will use exit code 1, the same as the command line)
+- changed the limit values for CPU/disk, which previously were used
+  optionally, whereas now they are always used; the default cpu ratio
+  limit is now 64 VCPUs per PCPU
+- changed the internal handling of the short name vs. original
+  (Ganeti-provided) name; now internally we always use the full name,
+  and only in display routines we show the shortened (called 'alias')
+  name; as a result, the -O and --excluded-instances options now accept
+  both the full name and the shortened name
+- changed internal handling of JSON conversions and errors, such that
+  now we show a better context for failure messages, which should help
+  with diagnosing the malformed message
+- changed the names for a few node fields, and added some more nodes;
+  this is most likely to help with debugging, and not with regular
+  operation though
+- changed the node fields option to allow the '+' prefix to mean 'extend
+  the default fields list' rather than start from fresh (similar to
+  Ganeti's implementation)
+- a few internal changes related to the LUXI protocol implementation,
+  which should make it more safe against potential bugs, one
+  optiomization that should help with large messages, and some patches
+  in preparation for potential expansion of the LUXI backend functionality
+
+And finally, many improvements on unittests and the live-test
+script. Test coverage is much enhanced, and the test infrastructure has
+better error reporting; this should lead down-the-road to better code
+and fewer bugs…
+
+
 Version 0.2.5 (Mon, 26 Apr 2010)
 --------------------------------
 
@@ -11,6 +83,7 @@ Some internal cleanup plus a few user-visible changes:
 - add more metrics to ``hspace`` which show the delta between original
   state and final state better (only valid for tiered allocation)
 
+
 Version 0.2.4 (Mon, 22 Feb 2010)
 --------------------------------
 
@@ -23,6 +96,7 @@ Two improvements for node evacuation:
   protocol, that will be released in a minor release on the Ganeti 2.1
   branch
 
+
 Version 0.2.3 (Thu,  4 Feb 2010)
 --------------------------------
 
@@ -39,6 +113,7 @@ A small release:
   kept in the file, and simplifies a little the internals of the text
   backend
 
+
 Version 0.2.2 (Tue, 29 Dec 2009)
 --------------------------------
 
@@ -55,12 +130,14 @@ Small release, 0.2.1 was broken and thus this was released earlier:
 - Added a new metric (offline primary instances) which should fix the
   evacuation of a offline node in a 2-node cluster
 
+
 Version 0.2.1 (Wed,  2 Dec 2009)
 --------------------------------
 
 - Added instance exclusion defined via instance tags
 - Fixed the output of hspace to be again parseable from the shell
 
+
 Version 0.2.0 (Tue, 10 Nov 2009)
 --------------------------------
 
@@ -95,11 +172,13 @@ Also there have been many minor improvements:
   disparate functions
 - Simplify the build system in relation to creation of archives
 
+
 Version 0.1.8 (Tue, 29 Sep 2009)
 --------------------------------
 
 - Brown-paper-bag release fixing haddock issues
 
+
 Version 0.1.7 (Mon, 28 Sep 2009)
 --------------------------------
 
@@ -112,6 +191,7 @@ Version 0.1.7 (Mon, 28 Sep 2009)
   balancing
 - Added support for building without curl (thus no RAPI backend)
 
+
 Version 0.1.6 (Wed, 19 Aug 2009)
 --------------------------------
 
@@ -122,6 +202,7 @@ Version 0.1.6 (Wed, 19 Aug 2009)
 - Fixed handling of errors while loading data
 - The 'network' is a new dependency due to the Luxi addition
 
+
 Version 0.1.5 (Thu, 09 Jul 2009)
 --------------------------------
 
@@ -133,6 +214,7 @@ Version 0.1.5 (Thu, 09 Jul 2009)
 - Optimized the scoring algorithm (used by all tools) so that now
   computations should be faster
 
+
 Version 0.1.4 (Tue, 16 Jun 2009)
 --------------------------------
 
@@ -145,12 +227,14 @@ Version 0.1.4 (Tue, 16 Jun 2009)
   was always falling back to summing the disk sizes)
 - Internals: fixed most compile-time warnings
 
+
 Version 0.1.3 (Fri, 05 Jun 2009)
 --------------------------------
 
 - Fix a bug in the ReplacePrimary instance moves, affecting most of the
   tools
 
+
 Version 0.1.2 (Tue, 02 Jun 2009)
 --------------------------------
 
@@ -159,6 +243,7 @@ Version 0.1.2 (Tue, 02 Jun 2009)
 - Improvements in API docs and partially in the user docs
 - Started adding unittests
 
+
 Version 0.1.1 (Tue, 26 May 2009)
 --------------------------------
 
@@ -176,6 +261,7 @@ Version 0.1.1 (Tue, 26 May 2009)
   by ganeti) as offline
 - Small enhancement to the makefile for simpler packaging
 
+
 Version 0.1.0 (Tue, 19 May 2009)
 --------------------------------
 
@@ -185,6 +271,7 @@ Version 0.1.0 (Tue, 19 May 2009)
 - Add a --quiet option to hbal
 - Add support for reading offline nodes directly from the cluster
 
+
 Version 0.0.8 (Tue, 21 Apr 2009)
 --------------------------------
 
@@ -198,6 +285,7 @@ Version 0.0.8 (Tue, 21 Apr 2009)
 - raise the accepted “missing” memory limit to 512MB, to cover usual Xen
   reservations
 
+
 Version 0.0.7 (Mon, 23 Mar 2009)
 --------------------------------
 
@@ -217,6 +305,7 @@ Version 0.0.7 (Mon, 23 Mar 2009)
 - some small changes to the build system to make it more friendly; also
   included the generated documentation in the source archive
 
+
 Version 0.0.6 (Mon, 16 Mar 2009)
 --------------------------------
 
@@ -240,6 +329,7 @@ Version 0.0.6 (Mon, 16 Mar 2009)
   migrate”
 - added man pages for the two binaries
 
+
 Version 0.0.5 (Mon, 09 Mar 2009)
 --------------------------------
 
@@ -253,6 +343,7 @@ Version 0.0.5 (Mon, 09 Mar 2009)
 - strip common domain suffix from nodes and instances, so that output is
   shorter and hopefully clearer
 
+
 Version 0.0.4 (Sun, 15 Feb 2009)
 --------------------------------
 
@@ -261,12 +352,14 @@ Version 0.0.4 (Sun, 15 Feb 2009)
   automatically via RAPI and doesn't need manual export of node and
   instance list
 
+
 Version 0.0.3 (Wed, 28 Jan 2009)
 --------------------------------
 
 - initial release of the hbal, a cluster rebalancing tool
 - input data format changed due to hbal requirements
 
+
 Version 0.0.2 (Tue, 06 Jan 2009)
 --------------------------------
 
@@ -275,6 +368,7 @@ Version 0.0.2 (Tue, 06 Jan 2009)
 - add option to print the needed command list for reaching the proposed
   solution
 
+
 Version 0.0.1 (Tue, 06 Jan 2009)
 --------------------------------