Statistics
| Branch: | Tag: | Revision:

root @ 896a03f6

# Date Author Comment
896a03f6 07/29/2011 11:49 am Iustin Pop

Clear the OS scripts environment

The OS scripts currently run with the whole noded environment; this is
different from the hooks which run with a cleared one and most likely
an oversight.

This might create problems when upgrading, so it needs to be clearly...

adf6301e 07/29/2011 11:48 am Michael Hanselmann

watcher: Split state class into separate module

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

bcf0450d 07/29/2011 11:21 am Michael Hanselmann

Rename watcher's constant for instance status file

“upfile” is a bad name.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Guido Trotter <>

84d7362b 07/29/2011 11:02 am Andrea Spadaccini

Fixed a typo in the installation tutorial

Signed-off-by: Andrea Spadaccini <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

9ca87fb3 07/28/2011 04:27 pm Michael Hanselmann

watcher: Split node maintenance into separate module

The node maintenance class is standalone.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

44275c2d 07/28/2011 02:26 pm Andrea Spadaccini

Fixed doc compilation under Sphinx 1.0.7

Sphinx 1.0.7 complains if an indented block in .warning starts with :option.
This fixes it.

Signed-off-by: Andrea Spadaccini <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

db0647dc 07/28/2011 02:17 pm Iustin Pop

Merge branch 'devel-2.4'

  • devel-2.4:
    Add support for cluster/OS parameters in QA
    Add OS search path to gnt-cluster info

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

35007011 07/28/2011 02:08 pm Iustin Pop

Remove requirement for variants on OS API v15+

This removes:

- the check in backend that such OSes have a variants file or if it
exists that is non-empty; in order for this to work, we also rework
the logic in backend._TryOSFromDisk to allow for optional OS files...

5abecc1c 07/28/2011 01:21 pm Iustin Pop

Add support for cluster/OS parameters in QA

Currently there is no way to QA with (for example) an initrd because
the QA only inits the cluster with the default parameters. This makes
it impossible to QA using anything but the default parameters, which
doesn't always work....

4474f112 07/28/2011 11:19 am Iustin Pop

Revert "cli.JobExecutor: Feedback function for info output"

This reverts commit 7421df8e5f2cf31022085b332d1300640ba5854b.

The feedback_fn argument to JobExecutor is used for PollJob, and thus
has a fixed signature: a single arg, tuple of (timestamp, log type,...

75932bcf 07/28/2011 11:18 am Agata Murawska

Extend the ovf-support design with format translation

Signed-off-by: Agata Murawska <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

c2a0947d 07/28/2011 11:16 am Iustin Pop

Add a QA constant for cluster verify command

This seems to be used and reused multiple times, let's abstract it…

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

f39b695a 07/28/2011 11:16 am Iustin Pop

Fix group verification of offline nodes

Commit aef59ae7 reworked the file verification, but forgot to take
into account offline nodes.

The fact that this was not detected yet is due to the fact that we
don't test clusters with offline nodes in QA :(

Signed-off-by: Iustin Pop <>...

6ba2bdc2 07/27/2011 03:50 pm Iustin Pop

Disallow variants for OSes that don't support them

Otherwise we get no variant checks at all, but the variant is still
recorded.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

732052c1 07/27/2011 02:27 pm Iustin Pop

Fix QA OS API failure

The patch changing the OS api in QA to 20 was not complete, sorry.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

e3f9ae2b 07/27/2011 11:38 am Iustin Pop

QA: test using OS API v20

v20 is (mostly) a superset of the other versions, so testing with it
should be better than with V10. This detects properly the breakage
fixed by the previous patch.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

6ae1fade 07/27/2011 11:38 am Iustin Pop

Fix OS queries for API v20 w/parameters

OS parameters is a list of tuples, so we can't pass it directly to
utils.NiceSort, hence we use a sort key.

This was not detected in QA since QA only tests API v10 :(

Signed-off-by: Iustin Pop <>...

9f039737 07/26/2011 02:22 pm Iustin Pop

Add helper for declaring all locks shared

This patch adds a function for abstracting
“dict.fromkeys(locking.LEVELS, 1)”. It also removes a duplicate
assignment for the share_locks in LUInstanceQuerydata.

Additionally, it moves the _SupportsOob function to the helper...

1ce03fb1 07/26/2011 02:19 pm Michael Hanselmann

Add ht-based result checks to opcodes

This adds the infrastructure necessary to check opcode results using
ht-based functions. Checks are added for two opcodes.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

ae1a845c 07/26/2011 01:53 pm Michael Hanselmann

Change OpClusterVerifyDisks to per-group opcodes

Until now verifying disks, which is also used by the watcher,
would lock all nodes and instances. With this patch the opcode
is changed to operate on per nodegroup, requiring fewer locks.

Both “gnt-cluster” and “ganeti-watcher” are changed for the...

c4ff2275 07/26/2011 01:53 pm Michael Hanselmann

cmdlib: Give instance name in error message on group evacuation

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

3ddd94f9 07/26/2011 01:53 pm Michael Hanselmann

cmdlib: Factorize mapping instance LVs to node/volume

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

7421df8e 07/26/2011 01:53 pm Michael Hanselmann

cli.JobExecutor: Feedback function for info output

This will be used in the watcher where we don't want to
pollute stdout unless in debug mode.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

f36c3e2d 07/26/2011 01:12 pm Ben Lipton

Add OS search path to gnt-cluster info

Otherwise, it's pretty hard to figure it out from the command line.

Signed-off-by: Ben Lipton <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

2be7c4cc 07/26/2011 11:55 am Guido Trotter

cluster-merge: remove a hardcoded constant

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

620a9c62 07/26/2011 11:38 am Guido Trotter

cluster-merge: add instance restart strategy opt

Right now we always restart all instances, which is not right if some
instances were already down for other reasons. Thus we add an option to
decide how to handle this. The right default should be "up" which is:...

d2b17e37 07/26/2011 11:38 am Guido Trotter

cluster-merge: remove option list from usage

It doesn't make sense to have to keep them up to date twice, and --help
already lists all of them with help strings.

Signed-off-by: Guido Trotter <>
Reviewed-by: Iustin Pop <>

13aeae6a 07/26/2011 11:31 am Iustin Pop

Fix recompilation of htools on regen-vcs-version

Currently, most htools code depends on Constants.hs which is generated
from constants.py and also depends on _autoconf.py. Also, _autoconf.py
depends on vcs-version, which all together means that when 'make...

a3ac3243 07/26/2011 11:31 am Iustin Pop

Add another name for the --yes-do-it option

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

d0c8c01d 07/25/2011 04:55 pm Iustin Pop

Most boring patch ever

s/'/"/ in (hopefully) the right places.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

0fa044e7 07/25/2011 04:06 pm Michael Hanselmann

Merge branch 'devel-2.4'

  • devel-2.4:
    Reopen daemon's stdio on SIGHUP
    Reopen log file only once after SIGHUP
    Don't leak file descriptors when setting up daemon output
    Fix aliases in bash completion

Signed-off-by: Michael Hanselmann <>...

110f49ef 07/25/2011 04:01 pm Michael Hanselmann

Reopen daemon's stdio on SIGHUP

Before this patch daemons would continue to refer to an old logfile for
their standard I/O if they had been asked to reopen the log (SIGHUP).

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

ad88650c 07/25/2011 04:01 pm Michael Hanselmann

Reopen log file only once after SIGHUP

Commit b6fa9a44 added a re-openable log handler. The log file is
reopened when a daemon is sent a HUP signal. Due to a bug in the code,
fixed by this patch, the log file would be reopened for every single log
message thereafter....

638ac34b 07/25/2011 04:01 pm Michael Hanselmann

Don't leak file descriptors when setting up daemon output

When a daemon's output is configured using “utils.SetupDaemonFDs”, the
function must use dup2(2). Unfortunately the code didn't close the
original file descriptors, leaking them in the process.

Signed-off-by: Michael Hanselmann <>...

97da6b71 07/22/2011 02:33 pm Iustin Pop

htools: rework the algorithm for ChangeAll mode

I think I've identified the problem with the current ChangeAll
mode. The current algorithm works as follows:

- identify a new primary by choosing the node which gives best score
as new secondary
- failover to it...

f965260c 07/22/2011 02:32 pm Michael Hanselmann

gnt-instance info: Return static info if node offline

Before this patch “gnt-instance info” would fail with the error message
“Error checking node $node: Node is marked offline” if the instance's
primary node is marked offline and the user didn't explicitely request...

3b61ee44 07/22/2011 02:30 pm Michael Hanselmann

Ignore offline primary when failing over

When the source node for a failover is marked offline, there's no need
to require the user to specify “--ignore-consistency”.

To make it work at all, a number of bugs introduced by the merge of
migration and failover are also fixed by this patch....

77ecfa82 07/22/2011 01:53 pm Iustin Pop

htools: replace two hardcoded uses of pri+sec nodes

These two cases use explicit uses of primary and secondary nodes with
Instance.allNodes, which means the code is more flexible if the
internal layout of the instance changes.

I've verified that the output of involvedNodes is not required to be...

bbe9758d 07/22/2011 01:53 pm Iustin Pop

htools: add target_node member to migrate opcode

… and failover too. Not many changes otherwise except for
serialisation and unittests.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

10f055ac 07/22/2011 01:53 pm Iustin Pop

htools: do not change node disk for non-local storage

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

8353b5e1 07/22/2011 01:53 pm Iustin Pop

htools: add more functions for local disk storage

These will be used in Node.hs for proper add/remove instance
code. Furthermore, we restrict the movable status to the right disk
templates only, so that we don't attempt to move the 'wrong' instance
types....

b3e3813e 07/22/2011 01:48 pm Agata Murawska

Initial design doc for OVF support

Signed-off-by: Agata Murawska <>
[: fixed formatting issues]

Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

3f42b4f6 07/22/2011 01:31 pm Michael Hanselmann

Fix aliases in bash completion

Ever since commit 2d48a3a2 aliases were not included in the bash
completion script. This patch also replaces one tab with two spaces.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

d6f46b6a 07/22/2011 01:29 pm Michael Hanselmann

gnt-instance console: Use query instead of opcode

This means opening the console no longer requires the instance lock,
allowing it to be used during long-running operations (e.g. replacing a
disk).

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

dbfde874 07/22/2011 12:07 pm Michael Hanselmann

Merge branch 'devel-2.4'

  • devel-2.4:
    gnt-node volumes: Fix instance names

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

018ae30b 07/22/2011 12:03 pm Michael Hanselmann

Add opcode attribute for comments

This attribute allows programmatic submitters of jobs (e.g. iallocator)
to add a comment to each opcode, describing its purpose. Example:

$ gnt-job info 123
Job ID: 123

Opcodes:
OP_INSTANCE_REPLACE_DISKS
…...

4b413e49 07/22/2011 12:00 pm Michael Hanselmann

gnt-node volumes: Fix instance names

Commit 84d7e26b changed “objects.Instance.MapLVsByN” to not just return
the LV name, but to include the volume group name (e.g.
“xenvg/d67e8700….disk0_data”). This in turn broke the mapping of volume
names in LUNodeQueryvols, stopping instance names from displayed in...

240c769f 07/21/2011 07:00 pm Andrea Spadaccini

Fixed one option name and a typo in the docs

The -g vg-name option was deprecated in commit
04367e70ad71eea3f0f19e7889dc68fb9783c98a.

Signed-off-by: Andrea Spadaccini <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

463f75a5 07/21/2011 04:25 pm Michael Hanselmann

Fix instance failover (missing argument)

More fallout from commit 323f9095b49d.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

c0a146a1 07/21/2011 04:25 pm Michael Hanselmann

Implement instance failover via RAPI

No idea why this was missed before.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

44b4eddc 07/21/2011 02:55 pm Michael Hanselmann

Make lock monitor more versatile

With this change it'll be possible to register other lock information
providers. One usecase for this are job dependencies, which can be shown
in the output of “gnt-debug locks”, too.

The lock monitor is changed to accept more than one return value from...

4c03b2b5 07/21/2011 02:55 pm Michael Hanselmann

locking.GLM: Allow adding locks to monitor

This will be used for exporting job dependencies through
the lock monitor.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

fcb21ad7 07/21/2011 02:55 pm Michael Hanselmann

Export job dependencies through lock monitor

This makes them visible to the user. Example:

$ gnt-debug locks -o name,pending
Name Pending
job/890 job:891,892
job/892 job:894

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

ee041788 07/21/2011 02:52 pm Iustin Pop

Update documentation regarding Haskell dependencies

These were forgot when the supported library versions were changed.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

0047d4e2 07/21/2011 02:52 pm Iustin Pop

htools: add two more small unittests

This adds tests for the opToResult and eitherToResult functions from
Types.hs, and changes two other tests for the same module to test JSON
serialisation (which automatically also tests the lower-level to/from
string conversion functions)....

5b53ca79 07/21/2011 02:52 pm Iustin Pop

htools: update hail man page with the new modes

Also mark the deprecated modes we no longer support.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

1b0a6356 07/21/2011 02:51 pm Iustin Pop

htools: a few more hlint fixes

Tested only on GHC 7.x, will test on 6.1x too before commit.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

179c0828 07/21/2011 02:50 pm Iustin Pop

htools: further docstring fixes

This adds parameter documentation for Cluster.iMoveToJob (I think it
was not clear if the new or old node list is needed) and fixes other
docstring style issues.

After this patch, all modules except for CLI.hs (which has many...

9f8b97ce 07/21/2011 02:50 pm Iustin Pop

htools: add JSON instance for EvacMode

This abstracts the JSON parsing of the type EvacMode near its
definition, and simplifies its conversion in IAlloc.parseData.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

375969eb 07/21/2011 02:49 pm Iustin Pop

htools: add human-readable output to hspace

Currently, hspace can only output a machine-readable format that
(while detailed) is hard to parse quickly by people. This patch adds
(and enables by default) a human-readable output that shows the most
important metrics in a simple format....

6a5e7dbe 07/21/2011 02:38 pm Iustin Pop

Fix job constants use in htools

Commit 56c094b4 added use of job constants, but I didn't pay
attention and ended up mixing things: job constants were used for
opcode ones, and the job ones didn't get converted.

This patch corrects it and uses only C.* constants throughout the Jobs...

67a315ba 07/21/2011 02:20 pm Michael Hanselmann

Add error state to LUGroupEvacuate's exceptions

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

47099cd1 07/21/2011 02:20 pm Michael Hanselmann

Rename *_STATUS_WAITLOCK to …_WAITING

This patch renames the {JOB,OP}_STATUS_WAITLOCK constants to {JOB,OP}_STATUS_WAITING, as per design document for chained jobs.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

f6eb380d 07/21/2011 12:39 pm Michael Hanselmann

gnt-group: Add command to evacuate whole group

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

08f8c82c 07/21/2011 12:39 pm Michael Hanselmann

Add new opcode for evacuating group

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

75d81fc8 07/21/2011 11:58 am Michael Hanselmann

Fix locking issue with job dependencies

When jobs waiting for a dependency are notified, they're re-added to the
queue. This would require owning the queue lock in exclusive mode, but
since the function doing so is called from within the job/opcode
processor, it only holds the lock in shared mode....

f8a4adfa 07/21/2011 11:56 am Michael Hanselmann

jqueue: Read-only jobs don't need processor lock

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

4f580fef 07/21/2011 08:38 am Sébastien Bocahu

Add support for KVM keymaps

Signed-off-by: Sébastien Bocahu <>
Signed-off-by: Michael Hanselmann <>
Reviewed-by: Michael Hanselmann <>

c2d22fed 07/21/2011 08:33 am Michael Hanselmann

gnt-debug: Add tests for job dependencies

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

b247c6fc 07/21/2011 08:33 am Michael Hanselmann

jqueue: Implement submitting multiple jobs with dependencies

With this change users of the “SubmitManyJobs” interface can use
relative job dependencies. Relative job IDs in dependencies are resolved
before handing the job off to the workerpool.

Signed-off-by: Michael Hanselmann <>...

7bb60c2d 07/21/2011 08:33 am Michael Hanselmann

Fix node evacuation

- Adjust for new iallocator result format
- Split some code into helper functions

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

4938fa30 07/20/2011 05:44 pm Guido Trotter

Do proper name lookup for the -O option

hspace and hbal treat -O differently, and use aliases for short names
(although hbal succeeds in that, and hspace doesn't). Uniform this with
a name lookup, using the same functions we used for instance
selection/exclusion....

c0f6d0d8 07/20/2011 03:11 pm Michael Hanselmann

jqueue: Add “writable” flag to memory objects

Basically only one instance of the job, the one being processed,
should be serialized to disk and replicated to other nodes. With
this flag assertions can be added in various places.

Signed-off-by: Michael Hanselmann <>...

b95479a5 07/20/2011 03:11 pm Michael Hanselmann

Implement chained jobs

An overview is available in the design document for this change,
doc/design-chained-jobs.rst.

When a job enters the job processor, the current opcode's dependencies
are evaluated. If a referenced job has not yet reached the desired...

2915335f 07/20/2011 03:09 pm Michael Hanselmann

Add implementation details to design for chained jobs

As requested by Iustin.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

42143c5b 07/20/2011 02:41 pm Pedro Macedo

Add support for GPT by using parted for disks bigger than 2TB.

Signed-off-by: Pedro Macedo <>
Reviewed-by: Michael Hanselmann <>

475242f6 07/20/2011 09:31 am Michael Hanselmann

Remove constants for iallocator multi-relocate

They're no longer necessary.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

519edd9f 07/19/2011 06:17 pm Iustin Pop

htools: add a machine-readable CLI flag

This will be used in hspace to toggle between "human" readable
and machine readable output formats.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

d7731f51 07/19/2011 06:06 pm Iustin Pop

htools: move the '-p' option to htools.rst

Since this is a common option and has a big description.

Signed-off-by: Iustin Pop <>
Reviewed-by: Michael Hanselmann <>

1494a4cc 07/19/2011 05:54 pm Iustin Pop

htools: switch hspace to the generic binary

This is the last patch of the binaries conversion.

As information, we now have a single binary that is approx. 5.4MiB in
size, compared to 4 binaries that were approx. 5.1-5.2MiB in size;
this will result in a smaller package and install size, and the single...

33b9d92d 07/19/2011 05:54 pm Iustin Pop

htools: import the program modules in QC.hs

This adds the binaries code to the coverage, and thus the coverage
finally shows the real coverage over all logic code (except for the
htools.hs code, which is not logic code related to the algorithms, so
it doesn't matter — plus it's also very small)....

756df409 07/19/2011 05:54 pm Iustin Pop

htools: move tiered spec map helper to Hspace.hs

This is used just in hspace, so let's help in making Cluster.hs
smaller. We also split the function in two, as computing the spec map
and formatting it are two different tasks.

Signed-off-by: Iustin Pop <>...

7b695a0d 07/19/2011 05:54 pm Iustin Pop

htools: switch hscan to the generic binary

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

201b6c34 07/19/2011 05:54 pm Iustin Pop

htools: switch hbal to the generic binary

In addition, the patch adds a separate Makefile variable for holding
the binary roles to make it more clear what we symlink.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

458a286a 07/19/2011 05:54 pm Iustin Pop

htools: switch hail to the generic binary

This converts the first binary to the generic 'htools' binary.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

d26d808a 07/19/2011 05:14 pm Iustin Pop

htools: add a generic binary

This is the start of a series of patches that will unify all the
binaries currently in use in a single one, which can perform different
roles based on the name it is installed as.

Signed-off-by: Iustin Pop <>...

1adec4be 07/19/2011 05:12 pm Iustin Pop

htools: add a compatibility module

When compiling with the parallel-3.x library, we get a deprecation
warning, which makes understanding any other error messages
harder. This patch adds a compatibility module that will hold such
code for transitioning libraries....

a5f248ac 07/19/2011 05:12 pm Iustin Pop

htools: remove no-longer-needed tryMG* functionality

… which was deprecated by the previous patch.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

fbe5fcf6 07/19/2011 05:12 pm Iustin Pop

htools: remove ialloc/relocate and multi-evacuate

Since the new node-evacuate mode does both their work and also
supports better multi-group clusters (including handling split
instances).

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

a86fbf36 07/19/2011 05:12 pm Iustin Pop

htools: fix potential bug in ialloc/change-group

Currently, the ChangeAll mode of nodeEvac computes the primary group
of the instance and then uses the resulting group index for computing
the group score. However, during the change-group operation (which...

96a12113 07/18/2011 06:33 pm Iustin Pop

htools: run IAllocator input through checkData

As the IAllocator backend is using a different data path than the
others, it doesn't get the full functionality that loadExternalData
does. This results in the current situation where checkData is not run
on the input cluster state, which means the node memory properties are...

8cd36391 07/18/2011 06:28 pm Iustin Pop

htools: abstract a function for displaying warnings

This will make it possible to reuse this in IAllocator too.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

15329af5 07/18/2011 06:28 pm Iustin Pop

htools: use maybePrintNodes in hail.hs

This eliminates duplication of codes (and was forgotten back when
maybePrintNodes was added).

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>

4162995d 07/18/2011 06:27 pm Iustin Pop

htools: add cluster state saving support to hail

This add support for saving the cluster state (both pre- and
post-iallocator run) to a text file such that it can be fed back into
any of the htools commands.

Signed-off-by: Iustin Pop <>...

f9283686 07/18/2011 06:27 pm Iustin Pop

htools: return the final instance map in ialloc

Similar to the previous patch, this returns the final instance map
from the iallocator run, which will allow saving the cluster state for
further examination/post-processing.

Signed-off-by: Iustin Pop <>...

ce6a0b53 07/18/2011 10:30 am Iustin Pop

htools: implement post-alloc cluster status display

This patch changes the IAllocator result formatting workflow to return
the final node list, which can be then used to display the final node
status too—currently only the initial status can be shown, which is...

fda24caf 07/15/2011 08:13 pm Michael Hanselmann

Update node group iallocator design to use job dependencies

While working on a function to submit jobsets, I realized that we
actually don't need them anymore. With the new job dependencies, the
iallocator plugin can just generate the right dependencies and gets the...

45df0793 07/15/2011 08:13 pm Michael Hanselmann

Fix assertion error on unclean master shutdown

Commit 66bd7445 added an assertion to ensure a finalized job has its
“end_timestamp” attribute set. Unfortunately it didn't cover a case when
the queue is recovering from an unclean master shutdown.

Signed-off-by: Michael Hanselmann <>...

fdfe88b1 07/15/2011 08:12 pm Michael Hanselmann

Make SharedLock._is_owned public

This will be useful for assertions. GanetiLockManager._is_owned is
exported, too.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Iustin Pop <>

4036f63a 07/15/2011 06:56 pm Iustin Pop

htools: return new state from new IAllocator modes

The old modes already return the node list (as part of AllocSolution),
this patch makes the new modes provide this new information.

Signed-off-by: Iustin Pop <>
Reviewed-by: Guido Trotter <>