| Branch: | Tag: | Revision:

root / lib @ b399ce1e

# Date Author Comment
b399ce1e 02/25/2009 05:03 pm Iustin Pop

Fix xen-hvm and KERNEL_ARGS

xen-hvm doesn't have KERNEL_ARGS, and I just changed blindly all old
extra_args to HV_KERNEL_ARGS. This makes xen-hvm work again.

Reviewed-by: imsnah

f3e2e4c6 02/25/2009 02:50 pm Iustin Pop

Update some version-related constants

Since we are quite close to final RPC and hooks APIs, we update the hooks and
protocol_version constants.

Reviewed-by: imsnah

2c2690c9 02/25/2009 01:23 pm Iustin Pop

Update some hooks settings

While reviewing the hooks document, I realised we are not correctly
exporting the instance properties.

This patch fixes:
- export the disk and disk template in all LUs, not only (hardcoded)
in the instance create
- removes the instance create INSTANCE_ prefix on some non-instance...

07813a9e 02/24/2009 05:25 pm Iustin Pop

Remove the extra_args parameter in instance start

This patch removes the extra_args parameter and instead switches the
instance to the HV_KERNEL_ARGS hypervisor option.

This is a big change, but it's a needed cleanup, this extra parameter on
all RPC calls is not generic and we also need to have a persistent value...

a985b417 02/24/2009 05:25 pm Iustin Pop

Simplify a little the hypervisor routines

Instead of “instance.hvparams”, we use a shorter “hvp” name to make readability

Reviewed-by: imsnah

f9d6542d 02/24/2009 05:24 pm Iustin Pop

Add definitions for the root_args hypervisor param

This patch adds a new hypervisor parameter for the hypervisors that can
actually start and instance with external kernels.

Reviewed-by: imsnah

9854f5d0 02/24/2009 01:23 pm Iustin Pop

Make gnt-instance info work with offline nodes

This simply makes LUQueryInstanceData return the same information as for
a static query when one or both of the nodes are down.

Reviewed-by: imsnah

74aa2478 02/19/2009 05:49 pm Iustin Pop

Update version numbers to beta2

Note that the RAPI change is in a docstring (i.e. example), not in code.

Reviewed-by: ultrotter

3213d3c8 02/17/2009 02:44 pm Iustin Pop

Show more details for failed xen commands

This patch also logs the output of the xm commands in case of failures;
some corner cases were forgotten in the last redo.

Reviewed-by: imsnah

ae48ac32 02/16/2009 04:50 pm Iustin Pop

Fix some bugs in reboot

There are two issues fixed in this patch:
- first, the recent RPC changes caused loss of data in hard reboot
type; we weren't reporting any results from the stop/start instance
- second, in soft or hard reboots, we didn't initialized the disk...

f6eaed12 02/16/2009 02:17 pm Iustin Pop

Convert IOErrors for /proc/drbd into our errors

If /proc/drbd can't be opened, this raises an IOError, but all the
error-handling behaviour in backend treats only BlockDeviceErrors. This
creates a plain failure in cluster verify and in other RPC calls.

This patch simply converts EnvironmentErrors into BlockDeviceErrors, and...

1cd8141c 02/16/2009 02:09 pm Guido Trotter

Convert default root partition to msdos style

As discussed with 2.0 msdos partition style should be the default in the
instance OS, so we're changing the default instance params accordingly.
A followup patch will update the debootstrap os.

Reviewed-by: iustinp

bf4a90af 02/13/2009 06:17 pm Iustin Pop

RAPI: documentation updates

This patch fixes the version and does some update to the RAPI resources

Reviewed-by: imsnah

6e99c5a0 02/13/2009 05:54 pm Iustin Pop

RAPI: fixes related to write mode

This patch fixes many small issues related to write functions:
- update documentations w.r.t. how to add users
- update the instance add function for latest API
- add instance delete
- fix addition of tags
- update some error messages...

bfc30ec0 02/13/2009 05:35 pm Iustin Pop

Some small improvements to the fake hypervisor

This patch modifies the fake hypervisor to substract the memory “used”
by “running” instances from the free memory, so the actual node
information changes based on the running instances.

Also some style changes and fixes are added....

d8dcf3c9 02/13/2009 03:49 pm Guido Trotter

SetInstanceParams: export nic changes to hooks

Currently we export the old instance "as is" and any nic changes get
lost, so hooks won't know of a different ip, bridge, or mac address.
This patch fixes it by putting the nics in the override dict, if any
changes are done....

ea5a5b74 02/13/2009 02:28 pm Guido Trotter

Remove two fixed FIXME and convert one to TODO

The cli FIXME is not something broken, but rather some better handling
feature we'd rather have, and the two backend FIXME are done (disks have
their read only parameter set, and the error is raised and thus reaches...

1f8588f6 02/13/2009 01:38 pm Iustin Pop

RAPI: format error messages as JSON

This patch changes the format of the HTTP error messages from text/html, which
is hard to parse from RAPI clients, to JSON which can be automatically parsed.

The error message is an object, which contains always three keys:...

77e1d753 02/13/2009 01:38 pm Iustin Pop

Make RAPI return 502/504 errors for luxi errors

This changes the RAPI error codes for luxi errors; a timeout error is
now reported properly as 504, while any other luxi error is reported as

It would be good to convert even more errors into proper return codes in...

0f6be82a 02/12/2009 08:13 pm Iustin Pop

job queue: log the opcode error too

Currently we only log "Error in opcode ...", but we don't log the error itself.
This is not good for debugging.

Reviewed-by: ultrotter

5c44da6a 02/12/2009 07:35 pm Guido Trotter

LUSetInstanceParams: Fix nic handling

Use constants.VALUE_NONE rather than hardcoding the string "none"
If we're adding a nic fill the nic_dict with default values
Check if the mac is syntactically valid, if we have one
Don't allow the mac to be 'auto' when modifying a nic...

e4640214 02/12/2009 07:35 pm Guido Trotter

ConfigWriter.AddInstance check instance mac

There is a race condition in CreateInstance, since the mac address is
generated early and only added to the config (and thus really assured to
be unique) only at this point. Since it's possible that another instance...

295728df 02/12/2009 07:35 pm Guido Trotter

Instance Creation: generate nics earlier

We want the real nic to be shown to the hooks and the allocators, so
we'll generate them in CheckPrereq. We also write a comment about the
race condition we generate. This race condition existed even before, so
moving this generation will just lenghen it a bit. A separate patch...

fd965830 02/12/2009 07:09 pm Iustin Pop

Handle better broken disks

While running burnin:
File "/usr/lib/python2.4/site-packages/ganeti/", line 497, in str
val += ", size=%dm)>" % self.size
TypeError: int argument required

This happened while handling another error, so we lose the original...

25ae22e4 02/12/2009 07:04 pm Iustin Pop

Do not check 'None' disk IDs for duplicates

In case of 'None' logical or physical IDs, we don't need to check them
for duplicates. This case can happen for DRBD devices in case of newly
added disks, for example.

Reviewed-by: imsnah

e7d81ba0 02/12/2009 07:04 pm Iustin Pop

Prevent race condition on MAC addresses

This patch adds a temporary set for MACs that have been requested but
are not yet in the configuration (as part of an instance NIC). The MACs
of an instance are automatically removed from this set when the instance...

5b460366 02/12/2009 07:03 pm Iustin Pop

Some small fixes

This patch removes the admin_ram LUQueryInstances field (is broken
anyway) and fixes the VNC address checks in the Xen Hypervisor.

Reviewed-by: imsnah

8aec325c 02/12/2009 07:03 pm Iustin Pop

Fix LUQueryInstances fields.

The query fields are now regular expressions. We need to quote the dots,
otherwise invalid fields will be accepted but they will lose special
formatting in the cli scripts.

Reviewed-by: imsnah

9b977740 02/12/2009 11:15 am Guido Trotter

Apply the right permissions to /etc/hosts

In the current Ganeti version when modifying /etc/hosts we mistakenly
give it the permissions of the temporary file we create to define its
content, which is by default 0600. This breaks most non-root
applications, and thus must be corrected. This patch forces the mode to...

1dff8e07 02/12/2009 09:34 am Iustin Pop

Fix RPC result handling in _AssembleInstanceDisks

For (status, data)-style RPC calls, the result data is in the ‘payload’
attribute. This was missed in the conversion patch, with the only side
effect that gnt-instance activate-disks didn't show a nice output...

4b98ac29 02/12/2009 09:31 am Iustin Pop

ConfigWriter: add checks for duplicate disk IDs

This patch adds a safety check for duplicate disk logical/physical IDs,
in order to prevent possible software bugs.

Reviewed-by: imsnah

1fae010f 02/12/2009 09:30 am Iustin Pop

Switch the instance_shutdown rpc to (status, data)

This patch changes the return type from this RPC call to include status
information and renames the backend method to match the RPC call name.

The patch is a little bigger than the reboot one, since this call is...

489fcbe9 02/12/2009 09:30 am Iustin Pop

Switch the instance_reboot rpc to (status, data)

This small patch changes the return type from this RPC call to include
status information and renames the backend method to match the RPC call

Reviewed-by: ultrotter

aed77cea 02/11/2009 08:29 pm Guido Trotter

FileStorage: abort creating over an existing file

In FileStorage there is a TODO:
decide whether we should check for existing files and
abort or not
After Ganeti ate my instance data I decided. Let's abort.
In general there is no reason we should overwrite existing files, and...

43e99cff 02/11/2009 06:23 pm Guido Trotter

_GenerateDiskTemplate: correct file disk index

Currently when adding disks the base for the index is not taken into
account, and disk 0 is added twice.

Reviewed-by: iustinp

ccd905ac 02/11/2009 12:19 pm Guido Trotter

HTS_USE_VNC, rename and remove KVM

Currently we use the HTS_USE_VNC constant only to copy the vnc password
file. While KVM uses vnc it currently has no password support, nor we'll
be on time making one for 2.0, so renaming the constant to
HTS_COPY_VNC_PASSWORD and only putting Xen HVM in it. In the future...

82e12743 02/10/2009 06:05 pm Iustin Pop

Some fixes to node add and re-add

The patch changes the pre-checks in node-add and re-add:
- if the node is not already in the cluster, refuse to re-add
- when re-adding, reuse the secondary IP from the cluster
- when re-adding, reset the offline and drained flags, so that RPC...

a5728081 02/10/2009 05:06 pm Guido Trotter

Instance parameters: force typing

We want all the hv/be parameters to have a known type, rather than a
random mix of empty string, boolean values, and None, so we declare the
type of each variable and we enforce/convert it.

- Add some new constants for enforceable value types...

c9d443ea 02/10/2009 04:47 pm Iustin Pop

Implement modification of the drained flag

This patch adds LU and cli-level support for modification of the node
drained flag. It is similar to the offline changes.

Reviewed-by: imsnah

733a2b6a 02/10/2009 04:46 pm Iustin Pop

Prevent allocations on drained nodes

This patch adds checks for drained nodes in the logical units that
allocate or move instances around. We also update an error message (not

Reviewed-by: imsnah

22f0f71d 02/10/2009 04:46 pm Iustin Pop

cluster verify: show correctly drained nodes

This patch changes slightly the output of gnt-cluster verify for drained
nodes, and also adds a note with the total number of drained nodes
(similar to the offline nodes note).

Reviewed-by: imsnah

5bf07049 02/10/2009 04:46 pm Iustin Pop

ConfigWriter: handle the drained node flag

This patch changes the master candidate pool computations in
ConfigWriter to properly handle drained nodes. They are now excluded
from counting towards the reachable number of candidates.

The patch also adds verification of consistency for the node status....

0b2454b9 02/10/2009 04:45 pm Iustin Pop

Allow query of the drained node attribute

This patch exports the drained attribute:
- LUQueryNodes accepts now the drained field
- RAPI exports it for node objects
- gnt-node info shows it now (along newly-added master_candidate and
offline flags)...

af64c0ea 02/10/2009 04:45 pm Iustin Pop

Add a ‘drained’ attribute to node objects

This attribute will be used to prevent any allocation on the node (any
of replace-disks with new secondary this node, failover to the node,
migration to the node).

The patch adds the attribute and initializes it correctly in cluster...

33bc6f01 02/10/2009 04:45 pm Iustin Pop

Some error message cleanups

Reviewed-by: imsnah

9c793cfb 02/10/2009 04:45 pm Iustin Pop

Cleanup of DRBD8._CheckMetaSize

This patch converts the _CheckMetaSize method to raise exceptions
instead of logging and returning False. This fits now in the new rpc
return types, so it's a cheap change.

Reviewed-by: ultrotter

1063abd1 02/10/2009 04:44 pm Iustin Pop

Change the disk assembly to raise exceptions

This big patch converts the bdev Assemble() methods and the supporting
functions to raise exceptions instead of returning False. This is a big
patch, since the assembly functions touch other functions: add children,...

0c6c04ec 02/10/2009 04:44 pm Iustin Pop

Change BlockDev.Remove() failure result

Currently, the Remove() methods of block devices return True/False.
This doesn't permit any error detail reporting.

This patch changes the return type to None for success, and raises
BlockDeviceError in case of failure. This permits the details to be...

e1bc0878 02/10/2009 04:44 pm Iustin Pop

Switch the blockdev_remove rpc to (status, data)

This converts the backend and cmdlib modules to a (status, data)
implementation of the blockdev_remove rpc call. is not yet
converted, so we don't actually have error information.

We also fix a bug in _RemoveDisks by not reusing a variable....

746f7476 02/10/2009 04:44 pm Iustin Pop

Change BlockDev.Shutdown() failure result

Currently, the Shutdown() methods of block devices return True/False.
This doesn't permit any error detail reporting.

This patch changes the return type to None for success, and raises
BlockDeviceError in case of failure. This permits the details to be...

cacfd1fd 02/10/2009 04:44 pm Iustin Pop

Switch the blockdev_shutdown rpc to (status, data)

This converts the backend and cmdlib modules to a (status, data)
implementation of the blockdev_shutdown rpc call. is not yet
converted, so we don't actually have error information.

We also fix a bug in _ShutdownInstanceDisks by not reusing a variable....

53c14ef1 02/10/2009 04:43 pm Iustin Pop

Convert blockdev_assemble rpc to (status, data)

This converts the RPC call blockdev_assemble to the new-style result
format. Note that we won't usually have error information, but it's the
first step toward it.

Reviewed-by: ultrotter

7a6b9510 02/10/2009 03:40 pm Iustin Pop

RAPI: fix a pylint warning

Child classes of _R_TAGS must define TAG_LEVEL, but for good style let's
define it also here to at least ensure we don't get a 'Unknown
attribute' exception.

Of course, this also silences a pylint warning.

Reviewed-by: amishchenko

12649e35 02/10/2009 01:59 pm Guido Trotter

LUSetInstanceParams: use the correct hvparams

In LUSetInstanceParam we used to save the dict without defaults for the
instance params as hv_inst, but to use the populated one for the
instance (hv_new). Fixing this leads to instances without all the
parameters set....

5c418644 02/10/2009 12:53 pm Guido Trotter

KVM: Correct CheckParameterSyntax docstring

The comment is not really true anymore, as we have a lot of parameters

Reviewed-by: iustinp

9798fcae 02/10/2009 12:53 pm Guido Trotter

KVM: Fix _CallMonitorCommand error message

1) Only instance_name is available
2) There was a missing string parameter

Reviewed-by: iustinp

11344a50 02/09/2009 05:17 pm Guido Trotter

KVM: Add usb mouse type parameter

In some cases 'mouse' may work better than 'tablet', so we'll handle
both by allowing the user to specify a parameter. By default no mouse is

Reviewed-by: iustinp

8745c3d7 02/09/2009 05:16 pm Guido Trotter

KVM: allow netboot

With this patch we allow KVM instances to be booted off the network.
The only issue is that this is not compatible with virtio nics, so
we disallow them, when booting from the net.

Reviewed-by: iustinp

37f88dc6 02/09/2009 05:16 pm Guido Trotter

KVM: actually support different nic types

When executing the KVM runtime we load the nic type from the runtime
hvparams and use it to specify the nic model type. As for the disk we
translate the DEV_PARAVIRTUAL type to 'virtio'.

Reviewed-by: iustinp

c2672466 02/09/2009 05:16 pm Guido Trotter

KVM: export hvparams in the runtime

They'll be used to set the nic type when we execute the runtime, since
the nics are processed later. We need to save the hvparams because we
want to use the same one as when we saved the runtime, rather than use
the current instance ones, to avoid applying only some changed...

1213604d 02/09/2009 05:16 pm Guido Trotter

KVM: actually support different disk types

By passing the relevant if= value to the disk we support different disk
types. The only change is that we'll translate "paravirtual" to
"virtio" to keep only one "paravirtualized" value, around ganeti. The
if= value is calculated outside the disks loop, as it's the same for all...

5155ede7 02/09/2009 05:16 pm Guido Trotter

Xen-HVM: Improve the invalid disk/nic type error

Copy the message from the KVM one, adding a missing 'the' and a list of
possible values, to help the user in his decision.

Reviewed-by: iustinp

43440815 02/09/2009 05:15 pm Guido Trotter

KVM: parameters for different disk and nic types

- Add a bunch of NICs and DISKs types
- Specify which one are valid disks and nics for KVM (the new ones
toghether with some of the old ones)
- Add the default values (paravirtual)
- Allow the disk and nic types as parameters and check their validity...

d08f6067 02/09/2009 05:15 pm Guido Trotter

Rename the device type constants

These are not HVM specific, so have been given an HT generic name.

Reviewed-by: iustinp

377d74c9 02/09/2009 05:15 pm Guido Trotter


The VNC base port has nothing to do with HVM itself, and is general to
VNC itself, so we're removing the HT_HVM prefix to the constant.

Reviewed-by: iustinp

024e157f 02/09/2009 04:04 pm Iustin Pop

Add a new instance query flag ‘disk_usage’

This patch adds a new instance query flag called disk_usage that
retrieves the overall space used by an instance on each of its nodes.
This can be used when balancing the cluster or checking N+1 status.

The flag is also exported in RAPI. Note the flag is currently broken for...

821d1bd1 02/09/2009 04:03 pm Iustin Pop

Uniformize some function names in

Currently, the names of the functions in that are actually
RPC procedures and are called from ganeti-noded are not corresponding to
the RPC names. This makes it hard to actually see which functions are...

82463074 02/09/2009 04:03 pm Iustin Pop

bdev: add and use two utility functions

This patch adds two utility functions for raising BlockDeviceError
exceptions and for running functions while ignoring this error. Most of
the manual “raise errors.BlockDeviceError” cases are converted to
_ThrowError, as this makes the code clearer....

23829f6f 02/09/2009 04:03 pm Iustin Pop

rpc.call_blockdev_find: convert to (status, data)

This patch converts the call_blockdev_find - which searches for block
devices and returns their status - to the (status, data) format. We also
modify the backend function name to match the rpc call.

Reviewed-by: ultrotter

0105bad3 02/09/2009 12:41 pm Iustin Pop

Export the cpu nodes and sockets from Xen

This is a hand-picked forward patch of commit 1755 on the 1.2 branch
(hand-picked since the trees diverged too much since then):

The patch changed the xen hypervisor to compute the number of cpu
sockets/nodes and enables the command line and the RAPI to show this...
1268d6fd 02/09/2009 12:31 pm Iustin Pop

Fix handling OS errors in AddOSToInstance

This patch fixes the error handling in the add OS to instance function
with regard to invalid OSes. Previously, we didn't handle any such
errors, with the end result that the user would have to look in the node
daemon log....

d3da87b8 02/09/2009 11:24 am Iustin Pop

backend.DrbdAttachNet: don't ignore Open() errors

Currently the return value or errors from the block device Open() method
are ignored. This patch catches any BlockDeviceErrors and returns a
well-formatted result.

Reviewed-by: ultrotter

0959c824 02/09/2009 11:24 am Iustin Pop

cmdlib: simplify some rpc error handling cases

By using the RemoteFailMsg() or the payload field of RpcResult, we can
simplify a few functions in cmdlib.

Reviewed-by: ultrotter

f2def43a 02/09/2009 11:24 am Iustin Pop

RpcResult: add a new payload field

For results which use the (status, payload) response type, it's easier
to define a ‘payload’ field on the result holding the payload than to
extract it using “data1” in the caller code.

Reviewed-by: ultrotter

4978db17 02/09/2009 11:24 am Iustin Pop

LUCreateInstance: only set running flag at the end

In lockless queries, it's better if we see the instance in ADMIN_down
rather than ERROR_down during the time it's installed. As such, we
change the LU to only mark the instance 'up' at the time we are ready to...

9dd363eb 02/07/2009 11:04 am Guido Trotter

KVM: don't boot from a virtio cdrom

Apparently it's not supported. Also add -boot command line parameters
to kvm, since they seem to help booting from the right place. Everything
will still only work when not using a kernel, but well... :)

Reviewed-by: iustinp

ec91c05d 02/07/2009 11:04 am Guido Trotter

KVM: don't boot from cdrom with no cdrom

Reviewed-by: iustinp

66d5dbef 02/07/2009 11:04 am Guido Trotter

Support cdrom image and boot order for KVM

The cdrom image has the same meaning than in Xen HVM, and so does
boot_order, even though it has a slightly different syntax, and uses the
value 'disk' too boot from disk and 'cdrom' to boot from cdrom.

Reviewed-by: iustinp

30948aa6 02/07/2009 11:03 am Guido Trotter

Get rid of constants.HT_HVM_DEFAULT_BOOT_ORDER

Confusingly, as a leftober from 1.2, there was a
constants.HT_HVM_DEFAULT_BOOT_ORDER constant, with a value opposite to
the default HV_BOOT_ORDER hv param that got enabled only if
HV_BOOT_ORDER was set to None. Since setting it to None is very...

ee69c97f 02/06/2009 10:09 am Iustin Pop

Fix rapi job listing

This patch fixes a couple of issues with the job listing:
- in case of a non-existing job, nicely raise 404 instead of 500
- in the job detail listing, also list the job log, the job
timestamps, etc.
- the opcode migrate instance was missing its description field...

8b2d1013 02/05/2009 03:37 pm Guido Trotter

KVM: add VNC TLS and X509 parameters

With this parameters VNC for KVM is able to be protected by tls,
optionally with an x509 certificate, and optionally verifying the
client as well. Additionally in this patch we limit the bind address to
being a directory, rather than a file or a directory, for simplicity, as...

8447f52b 02/05/2009 03:36 pm Guido Trotter

KVM: allow binding vnc to a file

Before we forced the VNC_BIND_ADDRESS to be an ip. Now we also accept a
path, and bind the instance to it, or to a file in it if it's a

Reviewed-by: iustinp

2e7b8369 02/05/2009 12:45 pm Iustin Pop

Fix some issues for lockless queries

This patch converts some more jobs with only queries into cheaper luxi
queries (no job created), and fixes some fallout from the lockless
queries changes.

Reviewed-by: ultrotter

a5b9d725 02/05/2009 11:47 am Iustin Pop

Revive RAPI QA tests for 2.0-style RAPI

This patch fixes the RAPI QA tests to work with today's RAPI code and
also does some other minor improvements:
- QA: only create the cluster if so configured (‘create-cluster’ key),
this allows running parts of the QA suite against existing clusters...

3d103742 02/04/2009 09:14 pm Iustin Pop

rapi: fix 'bulk' processing and add locking option

This patch fixes the 'bulk' parameter (before any non-empty
specification was considered True, in conflict with the documentation,
i.e. bulk=0 still did bulk queries).

The patch also adds optional locking on the instance/node listing (does...

9031ee8e 02/04/2009 09:14 pm Iustin Pop

rapi: cleanup and update to latest 2.0 API

This patch cleans up and updates the RAPI interface:
- queries are changes to luxi queries instead of jobs, where possible
- since we changed the API version, we remove the old-style attributes
(sda_size, ip, etc.) and replace them with 2.0 style...

bc8e4a1a 02/04/2009 05:11 pm Iustin Pop

Enable lockless node queries

Similar to the instance list, this patch enables lockless node queris.
“gnt-node list” accepts now the “--sync” flag which enables locking, the
default is lockless.

Reviewed-by: imsnah

85414b69 02/04/2009 05:11 pm Iustin Pop

rapi: fix authentication and queries

For queries, we don't want to require authentication. We fix this by adding an
override GetAuthRealm in the rapi daemon.

We also fix a method name.

Reviewed-by: imsnah

66baeccc 02/04/2009 05:11 pm Iustin Pop

Add one new luxi query: cluster info

This is the last query that RAPI executes via opcodes and is purely
static (config values only). As such, we can convert it safely to a
query instead of job.

Reviewed-by: imsnah

81a49123 02/04/2009 12:31 pm Iustin Pop

ssconf: add some more keys and some fixes

This patch adds the online node list and instance list to the ssconf
keys. In order to do distribute correctly the instance list, we need to
update the cluster serial number on instance additions and removals.

The patch also changes the permissions on the ssconf files to be 0444:...

ec79568d 02/04/2009 12:30 pm Iustin Pop

Implement lockless query operations

This patch adds the framework for, and enables lockless OpQueryInstances. This
means that instances will be shown in ERROR_up or ERROR_down state, even though
this is not an error (but just an in-progress job).

The framework is implemented as follows:...

00ad5362 02/03/2009 06:05 pm Guido Trotter

KVM: Make GetAllInstancesInfo concurrency-safe

Or actually more so. If this function gets called while instances get
shut down, it might try to report information on instances which don't
exits. Try to fail gracefully if that happens, by just skipping an...

1de62f37 02/03/2009 06:04 pm Guido Trotter

Correct a typo in ReadPidFile's docstring

Reviewed-by: iustinp

26f15862 02/03/2009 04:45 pm Iustin Pop

An attempt at fixing some encoding issues

This patch unifies the hardcoded re-encoding attempts into a single
function in This function is used to take either an unicode or
str object and convert it to a ASCII-only str object which can be safely...

bafc1d90 02/03/2009 12:55 pm Iustin Pop

Small patch for handling errors in node add

This small path hopefully fixes the handling of ssh verify errors in
node add (note: untested).

Reviewed-by: ultrotter

a162cf5b 02/03/2009 12:55 pm Iustin Pop

ssh: more details on failure

In case we fail without output from the ssh command, we should at least
add the exit code or any other failure reason to the error message, and
log it and the cmdline used to the node daemon log.

Reviewed-by: imsnah

a3f9f296 02/03/2009 12:45 pm Guido Trotter

Give a sane permission to the known_host file

Reviewed-by: iustinp

15552312 02/02/2009 04:49 pm Iustin Pop

A couple of small changes to the OS environment

This patch correctly exports the mode of disks (rw/ro) and also exports
the instance OS.

Reviewed-by: imsnah

bd0ff7c2 02/02/2009 01:23 pm Iustin Pop

Whitespace change: bad indentation in

This patch only changes some indentation in

Reviewed-by: imsnah

a1b805fb 02/02/2009 01:23 pm Iustin Pop

Return error messages in node add ssh handling

When the rpc call node_add fails, we don't have any error message. This
patch changes the call to return (status, data) so that the user can see
the correct error message.

Reviewed-by: imsnah