- Dec 07, 2012
-
-
Michael Hanselmann authored
Add verification code to mcpu to check an LU's locks. Two whitelists are provided to exclude LUs from the two tests. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Michael Hanselmann authored
Block instance allocations when all node locks will be acquired. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Block instance allocations when all node locks will be acquired. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Block instance allocations when all node locks will be acquired. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Avoid conflicts between instance allocations. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Block instance allocations when all node locks will be acquired. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Block instance allocations when all node locks will be acquired. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Block instance allocations when all node locks will be acquired. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
If no node names are given, all node locks are acquired. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michele Tartara authored
There was a typo in the docstring of the parseMessage function of the confd server. Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Helga Velroyen authored
This reverts commit b9a616e1, which depends on the "bitvec" library. We need to investigate a bit further that dependency, as it in turns depends on "vector" 0.9.1 or *below*, since 0.10.* removed support for Data.Vector.Unboxed.Safe which it uses. Signed-off-by:
Helga Velroyen <helgav@google.com> Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Dec 06, 2012
-
-
Helga Velroyen authored
Implementation of the network and address pool class in Haskell. Not complete yet. Includes unit tests that cover all functionality that is so far implemented. Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Older versions use “-----BEGIN RSA PRIVATE KEY-----” instead of “-----BEGIN PRIVATE KEY-----”. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Sometimes a node is not removed properly from a cluster (especially during development). This new tool stops all daemons and removes (after making copies) the most critical files. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
This patch does away with many calls to scp and by means of using “tools/node-daemon-setup”, verifies most of the values before writing them to files. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
The design for this is in “doc/design-node-add.rst”. The tool receives a JSON data structure on stdin and configures the node's daemon after verifying the received values. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Guido Trotter authored
There is a common conception that Just something is more worth than Nothing. So we're biasing our tests towards that. As such let's generate Nothing fewer times, and Just subgen more times. The values were copied from the "official" maybe generator. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Dimitris Aragiorgis authored
Use GetNetwork() only when having already aquired the lock, i.e. in CheckPrereq(). In LUNetworkConnect/Disconnect do not include Network info in Hooks environment, so that network locking can be avoided if conflicts are not checked. Invoke _CheckNodeGroupInstances() only in case of conflicts check, because otherwise owned instances are None, which results to an error. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Commit 3bdbe4b3 (“Jobs.hs: move OpStatus and JobStatus ADTs to Types.hs”) removed the TemplateHaskell language pragma from htest/Test/Ganeti/Jobs.hs due to a hlint warning, but that is bad: it means the testSuite call is no longer interpreted as a splice, so it results in: Parse error: naked expression at top level With newer GHCs. To fix this, we restore the pragma, and add an hlint ignore. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Dec 05, 2012
-
-
Dato Simó authored
configure.ac advertised that the HLINT environment variable could be set to specify the path to the 'hlint' tool. However, HLINT was being initialized to "no" inside configure.ac, which broke this usage. Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Dato Simó authored
Ganeti.Jobs now holds functions that can be used to submit and monitor the status of jobs. In particular, execJobsWait and waitForJobs are factored out of Hbal.hs. Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Dato Simó authored
Previously, functions in Hbal.hs related to execution of jobsets were returning only IO Bool, and printing any errors they found directly to stderr on their own. I'm going to be moving some of these functions to a library module in future commits, and it makes sense that they won't print to stderr, but rather return an error condition. To make diffs more readable, I change the return value in Hbal.hs itself, so that the next commit deals only with the move. It's now `main` that prints any Bad result to stderr. Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Dato Simó authored
In Hbal.hs, it's easy to get lost in the flow of exec* functions because their names are similar and don't convey their different purposes (e.g. runJobSet, execJobSet, execWrapper). This patch renames 'runJobSet' to 'execWithCancel', and 'execWrapper' to 'execCancelWrapper', since these two functions deal, in particular, with early termination when the user presses ^C. Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Dato Simó authored
'hangleSigInt' and 'hangleSigTerm' are renamed to 'handleSigInt' and 'handleSigTerm', respectively. Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Dato Simó authored
This leaves Ganeti/Jobs.hs and Test/Ganeti/Jobs.hs empty, but they're the target of a future move of some functions, so we leave them around, and don't delete them, to avoid unnecessary delete/create diffs. Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
epydoc allows overriding configuration values via environment variables. While this might be useful in certain use cases, but as no prefix whatsoever is used, conflicts are easily created. Some people have the environment variable “NAME” set, effectively overriding the project name set in epydoc.conf. A bug in epydoc causes an error if non-ASCII characters, such as German umlauts, are used in NAME. $ NAME=Täscht make py-apidoc […] UNEXPECTED ERROR: 'ascii' codec can't decode byte 0xc3 in position 73: ordinal not in range(128) $ parse=false make py-apidoc […] epydoc: error: Invalid option combination: --parse-only and --introspect-only. This patch changes the call in Makefile to reset the environment given to epydoc save for PATH and PYTHONPATH. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michael Hanselmann authored
Commit 4679547e implemented the ability to change job's priority after it was submitted. The code contained a bug whereby it would modify the input data for an opcode, something the job queue shouldn't do (logical units do for historical reasons). This patch removes the line modifying the opcode input and adjusts the tests. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Dimitris Aragiorgis authored
Use new NormalizeAndValidateThreeOctetMacPrefix() util function in LUNetworkAdd/LUNetworkSetParams to validate network's MAC prefix. Additionally, move the check in CheckArguments() in the case of LUNetworkAdd. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
All node locks are acquired. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Michael Hanselmann authored
This opcode acquires all node resource locks, which conflicts with instance allocations. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Michael Hanselmann authored
See comment in code. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Michael Hanselmann authored
See comment in code. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Michael Hanselmann authored
If the lock was acquired in the first place (only when an iallocator is used), it is released as soon as possible. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Michael Hanselmann authored
Changing instances' groups shouldn't conflict with instance allocations. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Michael Hanselmann authored
If locking is used (usually by ganeti-watcher), node allocations must be temporarily blocked. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Michael Hanselmann authored
Until now they are only mentioned in “doc/admin.rst” and the man page for “ganeti-listrunner”. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Dec 04, 2012
-
-
Michael Hanselmann authored
In the future instance creations might have a lock on all nodes as was the case until the implementation of opportunistic locking. Nodes for which the lock is not held will be shown to the iallocator plugin as if they were marked offline. This patch adds a new parameter named “node_whitelist” to “IAReqInstanceAlloc”. If set to a list, only nodes contained within are shown as online. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Michael Hanselmann authored
In some cases it is useful to ignore the output of and avoid mentioning successful commands. One would be when looking for a certain string in a file: $ gnt-cluster command egrep -q '^testing$' /etc/... Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Guido Trotter authored
We have to check that for each edge its vertices have different colors. This is very easy to do with a vertex-to-color map, but not so easy with a color-to-vertex one. Since all our coloring algorithms created a vertex-to-color map behind the scenes and then converted it, we flip them back to returning it directly, and do the conversion explicitly where we need it (which for now is everywhere except when testing this property). Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Guido Trotter authored
Our Dsatur implementation was incorrect: while the paper defined the degree of saturation of a vertex as the number of different colors it is adjacent to, we were using the number of colors, without considering uniqueness. This effectively implemented a different algorithm, which is very similar to the previous one, and while it performs slightly worse on average it still beats Dsatur on some cases. So we refactor the implementation to effectively support both algorithms without code duplication, and then we export both the old algorithms as "Dcolor" and the new one as "Dsatur". Since these are all fast algorithms in hroller we will still be able to pick the best result. Note that the new Dsatur implementation uses an IntSet to calculate the uniqueness. Results with nub + length on a list were significantly slower. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-