- Jul 19, 2012
-
-
Iustin Pop authored
By a strange accident, this file seems to be tabified, instead of our own 2-space rule. Re-indent it and also break one long line. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Simon Deziel authored
Setting a high prefix discourages the bridge from adopting the tap's MAC. Xen is not affected by this since the MAC is forced to "fe:ff:ff:ff:ff:ff". This addresses issue #217. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Jul 13, 2012
-
-
Iustin Pop authored
* stable-2.6: (72 commits) Make Ganeti 2.6.0 rc3 release Allow reinstall even when secondaries are offline Prepare NEWS file for Ganeti 2.6.0 rc3 QA updated to test instance removing when sec. is offline Ignore offline node errors when removing disks Allow instance disc activation with offline secondaries RAPI regression beparams/memory fix Fix redistribution of files w.r.t. offline nodes Fix cluster verify error on master-ip-setup script Add a Makefile rule to test unclean git status Add test helpers to .gitignore Fix a typo in NEWS Release Ganeti 2.6.0rc2 Prepare NEWS file for 2.6.0 rc2 Update time on Haskell binaries after build hcheck: add two simple type aliases for readability hcheck: rework output mode hcheck: reword and fix typo in instance/offline msg Add hlint warning for wrong use of 'length' Remove can_rebalance functionality from hcheck ... Conflicts: htools/Ganeti/HTools/QC.hs: due to the cleanup of missing type signatures, and the fact that in master two test functions had a changed argument list, trivial to fix Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
René Nussbaumer authored
Update NEWS regarding rc3 fixes and document changes in behaviour. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Jul 11, 2012
-
-
Agata Murawska authored
Added test checking that it is possible to remove an instance with drbd disk when non-primary node is offline. Signed-off-by:
Agata Murawska <agatamurawska@google.com> Reviewed-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Agata Murawska authored
When we delete DRBD disks from some instance, we do not want to get errors due to nodes other than that instance's primary being offline. Signed-off-by:
Agata Murawska <agatamurawska@google.com> Reviewed-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Jul 07, 2012
-
-
Iustin Pop authored
Currently, this is not allowed, so one can't run a replace-disks; this breaks any non-invasive method of recovering the redundancy of the instance if its disks are already stopped (but it still works if the disks on the primary are active). So let's fix this inconsistency. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Jul 06, 2012
-
-
Iustin Pop authored
Since we're just talking about converting Maybe into another monad, we can do that via the maybe function, instead of explicit casing. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
There are two current issues with the coverage values: - we don't import all modules, thus leading to incomplete coverage results (too optimistic); - we use hpc in its default mode (intersection), which means that even modules which do have coverage results but are not used in all binaries we test will be dropped from the results; thanks to Agata, passing --union to hpc is enough to have better results (don't remember why this wasn't there in the first place…) After adding more modules to the import list and fixing the combining mode, we now have a complete list of modules in coverage results, many with zero coverage, so our overall coverage has dropped to about 60%. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
Note however that this won't work correctly with older compilers, due to ghc issue #4256; however, it's a handy way to build complete a TAGS file for Emacs. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
Currently, we build the Haskell unittests with custom GHC flags, because we (I) were quite lazy when initially writing the unittests. This is not a problem for the tests themselves, but it creates problem when (for example) one would want to pass all $(HS_LIB_SRCS) to the compilers; this is not doable unless we "degrade" the flags used for all modules, instead of just for QC.hs. So we do two things to fix this: - first, we go and add type declaration to all functions that were missing them (in QC), and fix the couple of cases of monomorphism restrictions; this gets us rid of -fno-warn-missing-signature and -fno-warn-monomorphism-restriction - then, we move the actually important remaining options (-fno-warn-orphans and -fno-warn-unused-imports; see the explanation for the latter in the newly added FIXME) to a compiler pragma in the file, so that when building the unittests only this file is using the extra options And finally we can then drop the other unused options (-fno-warn-missing-methods anmd -Wwarn), leaving htools/test use simply -fhpc. This is more in-line with the other files, and thus we can handle all of HS_LIB_SRCS the same. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
René Nussbaumer authored
For compatibility with the old Ganeti version, we want to keep the beparams/memory field around for another release. This patch fixes this regression. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Agata Murawska authored
This patch aims at improving documentation for installing ganeti - both for users and developers. Signed-off-by:
Agata Murawska <agatamurawska@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
Since this is not yet used by any targets, we didn't detect yet the compilation warnings. Just trivial exports/imports cleanup. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Jul 05, 2012
-
-
Iustin Pop authored
We don't have a specific test for activate disks, so let's add it in the cases where we run (incidentally) activate-disks. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
Note that this needs (like for the opcode) a new option, with the default reverted (False instead of True). Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
This can be used to ensure that after activate-disks has returned, the instance's storage is consistent; currently there's no programmatic way to do this. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
This derives from an internal bug, but the story is consistent across both internal and external usage of hbal. Basically right now, hbal returns exit code 1 if requested to exit early, even if all jobs are successful. This is counter-intuitive due to two reasons: - hbal did what it was requested (exit early), so it shouldn't return error - there were no job failures, so there's nothing to "cleanup" or investigate on the Ganeti cluster, so again it shouldn't return error Therefore the new behaviour is as follows: - for cases where all jobs were successful, even if terminated early via SIGINT or via --limit, we exit with code 0 - for cases where jobs have failed or there were other errors in running hbal, the exit code is 1 - for cases were hbal is requested an immediate termination (SIGTERM), exit code is 2, denoting "unknown whether the Ganeti cluster is consistent or not" Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
There are two bugs in the current resize code, affecting mostly DRBD. First, due to bugs in old DRBD versions (pre 8.0.14), the code currently calls `drbdsetup resize' on both the primary or secondary. However, this is actually wrong per current DRBD (from drbdsetup(8)): resize This causes DRBD to reexamine the size of the device's backing storage device. To actually do online growing you need to extend the backing storages on both devices and call the resize command on one of your nodes. So calling it just on the primary node should be enough. However, we can't simply remove the calls to the secondary nodes, since that would break the growth of the underlying storage (LVM) on the secondary. Which leads to the second existing bug: we call resize on each node, even before finish the growth of the underlying storage. This can leads to all kind of issues if DRDB is not well behaved. So to fix both these bugs, we have to extend the current RPC call with another parameter, which denotes whether to extend the actual backing storage or just the "logical" one (DRBD being the only one; MD would be another, if implemented). This allows us to do the growth in two steps, first the backing store on all nodes, then the logical storage on just the primary node. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
Currently, _RedistributeAncillaryFiles computes two lists: the list of online nodes (for all files redistribution), and the list of vm_capable nodes, for hypervisor-specific files. However, the vm_capable list includes offline nodes too, leading to warning messages: WARNING: Copy of file /etc/xen/xend-config.sxp to node node13.example.com failed: Node is marked offline We fix this by trivially intersecting the vm_capable list with the online one. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
René Nussbaumer authored
This error does not show up until we exceed the pool of master candidates and have nodes which are not master candidates. The background is that we check for master-ip-setup script on master candidates and expect them not to be on the other nodes. However, we distribute a default master-ip-script which break this assumption. Furthermore, there's no reason why the file should just exists on the master candidates. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Jul 04, 2012
-
-
Iustin Pop authored
This is trivial, but can be used easily from automated builds to check that the git tree is clean: files are not modified and untracked files are not present. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Iustin Pop authored
Commit 3096524e enabled building of test helpers, but forgot to add them to .gitignore, resulting in "unclean" git status output. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
- Jul 03, 2012
-
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
René Nussbaumer authored
We are about to release another version of Ganeti 2.6, so we prepare the NEWS file with the changes from rc1 to rc2. Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
- Jun 29, 2012
-
-
Iustin Pop authored
This patch works around an issue in our build system. Since we don't use cabal or 'ghc -M', we don't track actual dependencies in our Makefile; this in turn means that editing a file that only is used in the main 'htools' binary will keep triggering 'ghc --make' for the hconfd binary; and this actually takes a bit of time to look at all the dependencies. So to work around this, we add a touch after each ghc --make, such that we trigger the unneeded build at most once. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
The same types are reused a couple of times, so let's add a couple of type aliases for easier change later and readability. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
Iustin Pop authored
Looking at the output of hcheck, in human readable mode, it looks like it always starts with a blank line. This is not nice, so I wanted to redo this to start cleanly. However, looking at the code, I realised that we need some internal cleanup; 'perGroupChecks' was doing both pure computation (computing the score/stats) and I/O work (printing the stats), which is ugly, so I split that in two; this allows perGroupChecks to be simpler, and we can therefore first compute the group stats, and start the output with the mode in which we run. So right now, hcheck will first output whether we need to run a rebalance, or if no-simulation is selected, etc., and only then display the actual stats, making the output a bit more consistent. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
Iustin Pop authored
While removing split instances check from hcheck, I saw a wrong use of 'length': this should only be used when one needs the actual length of the list, and not when one wants to check whether the list is empty or not (in that case, 'null' should be used). To prevent this in the future, let's add a hlint hint for it, and fix the warning it generates in hbal. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
Iustin Pop authored
Since hbal can now run rebalances even in the presence of split instances, we can remove this check and always run the rebalance. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
Iustin Pop authored
The code used a space, not a tab, in Makefile.am, which means it actually broke the variable declaring the man pages. Furthermore, we add some blank lines in the man page, otherwise the paragraphs will be run-in together. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
Iustin Pop authored
Backtracking through git blame, it turns out than commit 49148d15 changed "\fB20,102400,16384,4\fR" into "**B20,102400,16384,4**". But of course that's a mistake, since the markup was \fB, not just \f. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
Bernardo Dal Seno authored
Problem introduced by commit 87f0aa48. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Jack authored
Remove a useless space at the end of the line in a config file. Signed-off-by:
Jack Sitnikov <sitnikove@gmail.com> Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Constantinos Venetsanopoulos authored
With the new gnt-instance modify syntax for addition and removal of disks/NICs on arbitrary indexes, we hit an assertion if the user passes `modify' as one of the disk's parameters. E.g:: gnt-instance modify --disk 2:modify,size=3G instance1 gnt-instance modify --disk 3:add,size=1G,modify instance2 This patch fixes the bug, by allowing `modify' to be passed as a parameter (as happens with `add' and `remove'), as long as it is not done alongside `add' or `remove'. If so, it is treated in the same way as if none of modify/add/remove is passed --> modify. Signed-off-by:
Constantinos Venetsanopoulos <cven@grnet.gr> Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
- Jun 28, 2012
-
-
Jack authored
This hv parameter allows passing PCI devices to virtual machines. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-