Statistics
| Branch: | Tag: | Revision:

root / lib @ ad0e078e

# Date Author Comment
735e1318 01/25/2012 03:36 pm Michael Hanselmann

gnt-instance recreate-disks: Allow specifying new size

With this change a new disk size can be specified when recreating disks.

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

cf572b13 01/25/2012 03:24 pm René Nussbaumer

LUClusterSetParams: When ipolicy is updated warn for new violations

We need to loop over all node groups to apply their modification to make
sure that the new ipolicy actually affects their instance

Signed-off-by: René Nussbaumer <>
Reviewed-by: Guido Trotter <>...

68ab64cf 01/25/2012 03:24 pm René Nussbaumer

LUGroupSetParams: Warn if the new ipolicy will violate some ipolicies

If we modify the ipolicy we need to verify if any instance would now
violate the new ipolicy and warn about it. Any instance which already
violates the old one is ignored.

Signed-off-by: René Nussbaumer <>...

92ff96e8 01/25/2012 03:24 pm René Nussbaumer

cmdlib: Add a helper function for a set of violating instances

This helper will be used with the Op*SetParams and ipolicy verifications

Signed-off-by: René Nussbaumer <>
Reviewed-by: Guido Trotter <>

d04c9d45 01/24/2012 06:39 pm Iustin Pop

Rename ispecs-disk-templates to ipolicy-disk-templates

The ispecs (min/std/max) are different from the other ipolicy
variables (disk templates for now, more in the future). As such, let's
rename the ispecs-disk-templates to ipolicy-disk-templates for
consistency with this logical difference....

7181fba0 01/23/2012 07:53 pm Constantinos Venetsanopoulos

Implement rbd disk template

Introduce the rbd disk template, which handles provisioning and
management of instance disks as block devices mapped to rbd volumes
on a RADOS cluster.

The rbd template is of type DTS_EXT_MIRROR, meaning rbd-based
instances can failover or migrate to any node, without...

447af814 01/23/2012 03:39 pm Nikos Skalkotos

Open VDI Port when spice_use_vdagent is enabled

To use the features spice agent provides, a dedicated virtio-serial
channel must be created in qemu-kvm. The communication between the agent
and the other spice components takes place over this channel.

Signed-off-by: Guido Trotter <>...

c90d8e61 01/23/2012 03:17 pm Iustin Pop

Fix iallocator group objects

… this is yet another manual serialisation of objects :(

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

38a6e2e1 01/23/2012 03:02 pm Iustin Pop

Fix upgrading the cluster ipolicy

When running from git HEAD, just initialising the ipolicy when
non-existing is not good enough; we need to upgrade also missing keys,
etc.

This has downsides though, as it means we'll always 'rewrite' the
ipolicy, which might create silent data loss for unhandled changes...

f626cef4 01/23/2012 01:37 pm Michael Hanselmann

LUInstanceRecreateDisks: Actually acquire node resource locks

Before this change an assertion would fail as the resource locks weren't
actually acquired.

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

a81075bf 01/23/2012 01:21 pm Michael Hanselmann

cmdlib._CheckInstanceState: Use instance name in error message

The variable “instance” is an instance object, so to not get a
serialized version of the instance, the “name” attribute must be
used.

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

e53ea88d 01/23/2012 01:21 pm Michael Hanselmann

Unbreak build after merge 2ea64524ce

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

a24aed2a 01/23/2012 01:21 pm Michael Hanselmann

gnt-cluster command: Add option to prepend node name to output

With this patch a new option (“-M”, like dsh) is added to “gnt-cluster
command” to prepend the node name to all output lines.

$ gnt-cluster command -M uname -a | grep Linux
node18.example.com: Linux node18.example.com [...]...

e9ed4f2e 01/20/2012 07:55 pm Michael Hanselmann

cmdlib: Drop use of “len(…) != 0”

Found by Constantinos Venetsanopoulos.

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

2ea64524 01/20/2012 07:48 pm Guido Trotter

Merge branch 'devel-2.5'

  • devel-2.5:
    Migrate: don't check for free memory on cleanup
    Revert "cli: Disable abbreviation matching for options"

Conflicts:
lib/cli.py
- trivial
lib/cmdlib.py
- merge new condition

Signed-off-by: Guido Trotter <>...

72dc3fb3 01/20/2012 07:34 pm Guido Trotter

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    Migrate: don't check for free memory on cleanup

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

c1f19851 01/20/2012 07:12 pm Michael Hanselmann

cli: Log fully quoted command line

Instead of logging the concatenated arguments, with this patch every
command will properly quote its full command line. This makes it easier
to just copy-and-paste commands from “commands.log” to re-run them. Also
remove a case of “x = a or b” for non-boolean values....

6b826dfa 01/20/2012 06:24 pm Guido Trotter

Migrate: don't check for free memory on cleanup

Cleanup just updates the config with the correct location of the
instance, or informs of its down status, but never starts it. As such
there's no point in checking for enough free memory. Actually this check...

5b3f5fc8 01/20/2012 11:44 am Guido Trotter

LUInstanceStartup: check for minimum memory

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

61eb1a46 01/20/2012 11:44 am Guido Trotter

hypervisors: start instances with max available mem

If we have available more than MINMEM but less than MAXMEM, start a new
instance with that value, rather than MAXMEM.

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

5d1ab3a6 01/20/2012 11:44 am Guido Trotter

Instance startup: lock primary node

This will be used to balloon other instances on the node if needed.

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

945a7e67 01/20/2012 11:44 am Guido Trotter

kvm: always start in paused state

Currently kvm starts in a frozen state if cpu pinning is set.
This is useful for other purposes as well (eg. ballooning before the
instance uses the memory), so we move the functionality out of the cpu
pinning code.

Note that before the "continue" command was executed in a finally after...

bf5338b3 01/19/2012 06:43 pm Michael Hanselmann

Revert "cli: Disable abbreviation matching for options"

This reverts commit 232aab3f4f602a19f1226e85c3a3ecb245d60af4. We
shouldn't change the parsing of command line options in the middle of
the 2.5.x series.

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

59d81cb3 01/19/2012 03:14 pm Michael Hanselmann

Merge branch 'devel-2.5'

  • devel-2.5:
    Fix wrong option names in QA and cluster-merge
    Bump version to 2.5.0~rc5, update NEWS
    Add UnescapeAndSplit unittest for multi-escapes
    Fix a bug in command line option parsing code
    cli: Disable abbreviation matching for options...
ecabe27e 01/19/2012 02:42 pm Nikos Skalkotos

Fix a bug in command line option parsing code

Fix bug affecting command line options of "keyval" type. Although
escaping commands with \ is supported, it is is not applied to the
input recursively.

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

232aab3f 01/18/2012 08:42 pm Michael Hanselmann

cli: Disable abbreviation matching for options

Python's “optparse” module does option name prefix matching by default.
Since this can lead to confusing behaviour, e.g. by specifying “--force”
for a command which only has a “--force-multi” option, this patch...

2c0af7da 01/18/2012 06:03 pm Guido Trotter

gnt-instance modify -m|--runtime-memory

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

2c7a0373 01/17/2012 03:01 pm Guido Trotter

Implement memory ballooning in xen

Signed-off-by: Guido Trotter <>
Reviewed-by: René Nussbaumer <>

3d836750 01/17/2012 03:01 pm Guido Trotter

Implement memory ballooning in kvm

Signed-off-by: Guido Trotter <>
Reviewed-by: René Nussbaumer <>

80121c83 01/17/2012 03:01 pm Guido Trotter

xen: add the "maxmem" parameter in instances config

This is set to the same amount as the memory for now, but will allow
starting instances with less memory than their maximum.

Signed-off-by: Guido Trotter <>
Reviewed-by: René Nussbaumer <>

cfb5f9da 01/17/2012 03:01 pm Guido Trotter

Implement memory ballooning in the fake hv

Signed-off-by: Guido Trotter <>
Reviewed-by: René Nussbaumer <>

2e2fb795 01/17/2012 03:01 pm Guido Trotter

No-op memory ballooning in chroot and lxc

Currently they have no memory limits set.

Signed-off-by: Guido Trotter <>
Reviewed-by: René Nussbaumer <>

ebe466d8 01/17/2012 03:01 pm Guido Trotter

Add instance_balloon_memory rpc

Signed-off-by: Guido Trotter <>
Reviewed-by: René Nussbaumer <>

b990eedd 01/17/2012 03:01 pm Guido Trotter

Hypervisor: allow ballooning of instance memory

This new hypervisor call sets the memory of an instance to a new value,
through ballooning.

Signed-off-by: Guido Trotter <>
Reviewed-by: René Nussbaumer <>

7530364d 01/17/2012 12:08 pm Iustin Pop

Accept both PUT and POST in noded

Currently, noded requires PUT, even though the semantics of the RPC
calls do not match a PUT. We change the code accept both PUT and POST,
with the intention to remove the PUT support in a later version.

On the client side, the RPC code is changed to send POST requests....

893e8f49 01/16/2012 10:36 am René Nussbaumer

gnt-instance: Adapt replace-disks to the new opcode

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

d2fe2bfb 01/16/2012 10:36 am René Nussbaumer

TLReplaceDisk: Add ipolicy checks

Signed-off-by: René Nussbaumer <>
Reviewed-by: Iustin Pop <>

57dc299a 01/13/2012 03:24 pm Iustin Pop

Further fixes to instance policy validation

As a followup from "Remove extraneous check in policy creation", there
are more places where we build an ipolicy, and then manually check for
its validity. This is very bad style, as it duplicates the
verification code across many places....

2cc673a3 01/13/2012 03:16 pm Iustin Pop

Add new disk_templates parameter to instance policy

This is a bit more complex patch, as it requires changing the
assumption that all keys in the policy dict points to values that are
themselves dicts. Right now we introduce an assumption that any
non-dicts are lists, we'll see in the future if this holds or whether...

45f8b50d 01/13/2012 03:16 pm Iustin Pop

Remove extraneous check in policy creation

The values are already checked in CreateIPolicy, no need to manually
check them again.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

0ce212e5 01/13/2012 03:16 pm Iustin Pop

Move the instance specs options to cli.py

Currently these are defined twice, instead of a single time in
cli.py. Also adds the new disk_templates option to the common block,
even though it's not yet used.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

12c3d3f6 01/13/2012 03:16 pm Iustin Pop

Add a new disk-template ipolicy option

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

499eb088 01/13/2012 03:16 pm Iustin Pop

Add a new CLI option type 'list'

This simply splits the value in the option parser, instead of needing
to do it in the client code.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

363c0106 01/13/2012 03:16 pm Iustin Pop

Fix handling of errors from InstancePolicy.Check...

This code raises a configuration error, but we need to transform it
into a prereq error (or possibly exec error), depending on when we
call this function.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

50761ebd 01/12/2012 02:31 pm Constantinos Venetsanopoulos

Fix acquisition of node lock in LUInstanceGrowDisk

Ensure node level locks are recalculated properly
in LUInstanceGrowDisk.

Signed-off-by: Constantinos Venetsanopoulos <>
Signed-off-by: Iustin Pop <>
Reviewed-by: Iustin Pop <>

4b97458c 01/11/2012 01:13 pm Iustin Pop

Fix cluster ispecs on upgrade

Cluster-level parameters must not be empty. Plus two more minor
changes.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

b32f3c0c 01/11/2012 01:12 pm Iustin Pop

Better max ispec defaults

Instead of being equal to the minimum ones, these are reusing current
constants.

Signed-off-by: Iustin Pop <>
Reviewed-by: René Nussbaumer <>

89e8508e 01/11/2012 10:13 am René Nussbaumer

cmdlib: _VerifyInstancePolicy has been replaced and is dead code

This removes this method

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

0e68bf27 01/11/2012 10:13 am René Nussbaumer

cmdlib: Rename _CheckMinMaxSpecs to _ComputeMinMaxSpec

This is to reflect the fact that _Check functions do raise Op*Error
which is not the case for _CheckMinMaxSpec.

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

380bb53a 01/10/2012 05:16 pm Michael Hanselmann

utils.ResetTempfileModule: Improve performance

This function is called for after every fork (e.g. for handling an RPC
request). With the changes in this patch generating the next random
filename is about 30% faster.

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

20875652 01/10/2012 03:09 pm Michael Hanselmann

LUInstanceCreate: Release node resource lock

… after running iallocator. Otherwise an assertion later in the code
would fail (for a good reason).

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

ff02b60f 01/10/2012 02:34 pm René Nussbaumer

_CheckTargetNodeIPolicy: instance.primary_node is not objects.Node

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

c879832c 01/10/2012 02:34 pm René Nussbaumer

cmdlib: node.group is not a nodegroup object

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

26ece371 01/10/2012 02:34 pm René Nussbaumer

LUInstanceCreate: self.disks is a dict not a disk object

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

c20a19ed 01/10/2012 02:06 pm Iustin Pop

Fix wrong variable name

Commit bc5d0215 added support for disk params, but due to copy-paste
it tries to enforce the hvparams into disk params values, leading to:

$ gnt-cluster modify -H kvm:initrd_path=/boot/initrd-2.6-kvmU
Parameter Error: Unknown parameter 'initrd_path'...

922c57bf 01/09/2012 07:27 pm Guido Trotter

InstanceStartup: use overridden beparams in prereq

Without doing this memory checks happen on instance default parameters
rather than any overridden ones.

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

a41fd46e 01/09/2012 06:16 pm Michael Hanselmann

Merge branch 'devel-2.4' into stable-2.5

  • devel-2.4:
    Add UnescapeAndSplit unittest for multi-escapes
    Fix a bug in command line option parsing code
    ConfigWriter: Fix epydoc error
    LUGroupAssignNodes: Fix node membership corruption
    Ensure unused ports return to the free port pool...
9fa567b3 01/06/2012 02:47 pm René Nussbaumer

gnt-node: Add instance policy to migrate

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

43f52ae3 01/06/2012 02:47 pm René Nussbaumer

cmdlib: Adapt LUClusterVerifyGroup for instance policy

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

2a84b7d3 01/06/2012 02:46 pm René Nussbaumer

gnt-backup: Adding force option to import

This makes it possible to bypass the instance policy

Signed-off-by: René Nussbaumer <>
Reviewed-by: Guido Trotter <>

10889e0c 01/06/2012 02:46 pm René Nussbaumer

gnt-instance: Adding instance policy to add

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

1559e1e7 01/06/2012 02:46 pm René Nussbaumer

gnt-instance: Adding verification of instance policy to modify

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

92cf62e3 01/06/2012 02:46 pm René Nussbaumer

gnt-instance: Adding instance policy to move

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

3ed23330 01/06/2012 02:46 pm René Nussbaumer

gnt-instance: Adding instance policy to migrate

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

b6aaf437 01/06/2012 02:46 pm René Nussbaumer

gnt-instance: Adding instance policy to failover

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

0fb81174 01/06/2012 02:45 pm René Nussbaumer

cmdlib: Adding helper for instance policy

Signed-off-by: René Nussbaumer <>
Reviewed-by: Michael Hanselmann <>

c2dc025a 01/06/2012 02:36 pm Michael Hanselmann

rpc.ConfigRunner: Fix uploading file

Commit 601dfcb made some changes to the default encoders. This made
“ConfigRunner.call_upload_file” fail due to a missing encoder. This
patch applies the necessary changes to ConfigRunner and updates the
unittest for “call_upload_file”....

30a83755 01/06/2012 01:49 pm Guido Trotter

Update GrowDisk docstring

It forgot about one argument.

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

c668ead9 01/06/2012 01:38 pm Guido Trotter

Merge branch 'devel-2.5'

  • devel-2.5:
    KVM: support version reported by 1.0
    doc/admin: Clarify archived jobs

Conflicts:
NEWS: trivial

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

2635bb04 01/06/2012 01:34 pm Michael Hanselmann

Move helper class from watcher to utils.io

“FileStatHelper” can be used together with “ReadFile” to a file's status
while it's opened. This avoids certain race conditions.

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

2ce40421 01/06/2012 01:34 pm Michael Hanselmann

rpc._PrepareFileUpload: Use FileStatHelper

Use fstat(2) on the file handle instead of doing a separate stat(2).

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

d5ea30e8 01/06/2012 01:34 pm Michael Hanselmann

rpc: Change signature of RpcRunner

Instead of receiving the whole masterd context, it only gets the
configuration and the lock monitor callback. This simplifies
unittesting.

Additionaly, two new arguments for testing are added.

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

601dfcbb 01/06/2012 01:34 pm Michael Hanselmann

Add unittest for uploading file via RPC

After some preparing patches this unittest can finally be added.

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

e78667fe 01/06/2012 01:34 pm Michael Hanselmann

rpc._RpcClientBase: Add check for number of arguments

Just an additional check, useful in unittests.

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

065be3f0 01/06/2012 01:34 pm Michael Hanselmann

Add unittests for RPC client

This patch adds a number of unittests for the RPC client base class.
Some small changes were necessary in “rpc.py” to allow for better
testing.

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

f00170e2 01/06/2012 01:34 pm Michael Hanselmann

runtime: Style fix in docstring

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

764ff2eb 01/06/2012 01:34 pm Michael Hanselmann

rpc: Style fix

“assert” is a statement, not a function.

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

c52d91e6 01/06/2012 01:24 pm Guido Trotter

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    KVM: support version reported by 1.0

Signed-off-by: Guido Trotter <>
Reviewed-by: Andrea Spadaccini <>

585c8187 01/06/2012 12:27 pm Guido Trotter

KVM: support version reported by 1.0

This of course was working for all the rcs, but broke with 1.0 itself.

In addition:
- split between running kvm --version and parsing its output
- unittest parsing for various known --help outputs
- updated NEWS file...

890ea4ce 01/05/2012 05:30 pm Michael Hanselmann

rpc._NodeConfigResolver: Support resolving offline nodes

This is needed to powercycle a node marked offline.

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

68a856ef 01/05/2012 05:30 pm Michael Hanselmann

rpc_defs: Enable “node_powercycle” for offline nodes

With this change it's possible to powercycle nodes marked as offline. Of
course the node might not be running the node daemon anymore.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: René Nussbaumer <>

f863d7aa 01/05/2012 05:30 pm Michael Hanselmann

rpc._RpcProcessor: Make read timeout a non-keyword argument

It is always used and can be set to “None” if intended.

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

dd6d2d09 01/05/2012 05:30 pm Michael Hanselmann

rpc: Add support for resolver options callback

This adds support for a callback returning name resolver options. This
is required for powercycling offline nodes. While it would be possible
to implement this using a separate RPC client class, doing so would...

fce5efd1 01/05/2012 05:30 pm Michael Hanselmann

rpc: Pass resolver options to actual resolver

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

aa66c183 12/22/2011 07:16 pm Michael Hanselmann

Merge branch 'devel-2.5'

  • devel-2.5:
    jqueue: Factorize checking job processor's result
    jqueue unittest: Rename simple fake-job class
    jqueue: Fix epylint errors introduced in 37d76f1e4
    jqueue: Fix deadlock between job queue and dependency manager...
4f44e311 12/22/2011 06:41 pm Michael Hanselmann

Merge branch 'stable-2.5' into devel-2.5

  • stable-2.5:
    jqueue: Fix epylint errors introduced in 37d76f1e4
    jqueue: Fix deadlock between job queue and dependency manager

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

df5a5730 12/22/2011 03:19 pm Michael Hanselmann

jqueue: Factorize checking job processor's result

This allows for more unittesting.

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

eea3b572 12/22/2011 03:12 pm Bernardo Dal Seno

noded: Fix /etc/hosts group ownership

When Ganeti was compiled with the option of running as a different
user/group, the group ownership of /etc/hosts was set to gnt-daemons. Now
permissions for /etc/hosts are preserved (or set correctly).

Signed-off-by: Bernardo Dal Seno <>...

c47eddb8 12/22/2011 03:12 pm Bernardo Dal Seno

utils.WriteFile: Add new parameter to preserve file permissions

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

1316ebc2 12/21/2011 06:04 pm Michael Hanselmann

jqueue: Fix epylint errors introduced in 37d76f1e4

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

60154921 12/21/2011 06:02 pm Iustin Pop

Extend RPC definition change with another parameter

This will be used in a later patch for parameter pre-processing. For
now we just add the parameter as 'None' and add a consistency check
for the parameter definitions.

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

d9de612c 12/21/2011 06:02 pm Iustin Pop

Change internal RPC client body values

Currently, all RPC payloads sent by the client to the remote node
daemons must be identical, due to how the data is passed
internally. This is deficient in both use (from the programmer's point
of view) and from the network traffic (cluster verify/disk data...

5449685e 12/21/2011 06:02 pm Iustin Pop

Switch blockdev_getmirrorstatus_multi to per-node bodies

Even for a small 4-node node-group, this reduces the payload of this
RPC call by half for each node; for a big node group, previous testing
(using a different patch) showed a general reduction in traffic over...

527c0cf7 12/21/2011 06:01 pm Michael Hanselmann

hv_kvm: Make string containing regex a raw string

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

65107a2f 12/21/2011 05:25 pm Michael Hanselmann

hv_kvm: Style fixes

Change a few lines to match rest of code.

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

9b87c2cf 12/21/2011 05:25 pm Michael Hanselmann

hv_kvm.QmpMessage: Use dict.get

No need to look up the key twice.

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

a182a3ed 12/21/2011 04:55 pm Michael Hanselmann

serializer: Remove JSON indentation and dict key sorting

Serializing to JSON using “simplejson” is significantly slower when
indentation and/or sorting of dictionary keys is used. In simplejson 1.x
the difference isn't that big, but with simplejson 2.x the difference...

37d76f1e 12/21/2011 04:35 pm Michael Hanselmann

jqueue: Fix deadlock between job queue and dependency manager

When an opcode is about to be processed its dependencies are
evaluated using “_JobDependencyManager.CheckAndRegister”. Due
to its nature that function requires a lock on the manager's
internal structures. All of this happens while the job queue...

519fafa1 12/20/2011 12:07 pm Andrea Spadaccini

Fix parameters for QueryJob in JobExecutor

When gnt-job submit is used with the --each option, it sends as
parameters for QueryJobs a list of lists, each containing a job ID.
While this works now, it is not the intended format for QueryJobs.

This patch fixes this behavior, by making it send a list of job IDs....

20699809 12/19/2011 05:37 pm Michael Hanselmann

locking: Add “__repr__” to SharedLock and PipeCondition

These help when debugging.

Signed-off-by: Michael Hanselmann <>
Reviewed-by: Andrea Spadaccini <>