Statistics
| Branch: | Tag: | Revision:

root / lib @ b3fc101f

Name Size
  build
  client
  cmdlib
  confd
  http
  hypervisor
  impexpd
  jqueue
  masterd
  rapi
  rpc
  server
  storage
  tools
  utils
  watcher
__init__.py 1.2 kB
_constants.py.in 285 Bytes
asyncnotifier.py 6.1 kB
backend.py 151.7 kB
bootstrap.py 42.9 kB
cli.py 144.4 kB
compat.py 5.2 kB
config.py 103.4 kB
constants.py 2.9 kB
daemon.py 28.1 kB
errors.py 10.9 kB
hooksmaster.py 10 kB
ht.py 17.5 kB
jstore.py 6.1 kB
locking.py 60.9 kB
luxi.py 8.1 kB
mcpu.py 22.1 kB
netutils.py 19.7 kB
network.py 7.7 kB
objects.py 71.9 kB
opcodes.py.in_after 391 Bytes
opcodes.py.in_before 7.2 kB
opcodes_base.py 7.8 kB
outils.py 4.5 kB
ovf.py 66 kB
pathutils.py 6.4 kB
qlang.py 9.5 kB
query.py 86.8 kB
rpc_defs.py 27 kB
runtime.py 8 kB
serializer.py 10.8 kB
ssconf.py 13.5 kB
ssh.py 10.7 kB
uidpool.py 11.7 kB
vcluster.py 7.7 kB
wconfd.py 1.4 kB
workerpool.py 18.3 kB

Latest revisions

# Date Author Comment
94c42103 04/24/2014 02:11 pm Klaus Aehlig

Add VTypeFloat

...in order not to have to declare floating point
values as VTypeInt and rely on the sloppiness of
the JSON specification to not distinguish between
integers and floating point numbers.

Signed-off-by: Klaus Aehlig <>
Reviewed-by: Petr Pudlak <>

c697dc2c 04/24/2014 09:46 am Petr Pudlak

Cancel job outside the SIGTERM handler

.. because modifying the queue inside the handler can have unexpected
consequences.

Since Python 2 doesn't have a nice way how to modify a variable from
an inner function, we have to use a list as a wrapper.
(Python 3 has the "nonlocal" keyword for it.)...

df478a59 04/17/2014 06:59 pm Petr Pudlak

Let Python network Transport retry if endpoint is missing

If the endpoint (such as Luxid or WConfd) isn't running, don't fail
immediately. Instead retry (within the given timeout) and try to
reconnect.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

3bc9fc95 04/17/2014 06:59 pm Petr Pudlak

Fix private parameters wrapping when deserializing JSON

On the Python side it was assumed that the blacklisted private
parameters were always dictionaries, but since they're optional, they
could be 'None' as well.

Signed-off-by: Petr Pudlak <>...

942817f2 04/17/2014 06:59 pm Petr Pudlak

Remove the use of queue lock in Python job queue

Since now each process only creates a 1-job queue, trying to use file
locks only causes job deadlock.

Also reduce the number of threads running in a job queue to 1.

Later the job queue will be removed completely....

ea0a6023 04/17/2014 06:59 pm Petr Pudlak

Set process ID field when starting up a job

The ID of the current process is stored in the job file.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

76b4ac58 04/17/2014 06:59 pm Petr Pudlak

Add optional fields for job livelocks and process IDs

This will allow to check if a particular job is alive, and send signals
to it when it's running.

The fields aren't serialized, if missing, for backwards compatibility.

Signed-off-by: Petr Pudlak <>...

7b4bde57 04/17/2014 06:59 pm Petr Pudlak

Add Haskell and Python modules for running jobs as processes

They will be used by Luxi daemon to spawn jobs as separate processes.

The communication protocol between the Luxi daemon and a spawned process
is described in the documentation of module Ganeti.Query.Exec....

53eea5bb 04/17/2014 06:56 pm Petr Pudlak

Allow GanetiContext to get a livelock as a parameter

.. so that job processes can supply the livelock inherited from the
master process.

Also add a logging statement for creating the job queue (which will be
removed when we get rid of Python job queues completely)....

c061d046 04/17/2014 06:56 pm Petr Pudlak

Add a method for checking if a particular job has ended

This will be used by job processes temporarily, until they get rid of
using job queue completely.

Signed-off-by: Petr Pudlak <>
Reviewed-by: Klaus Aehlig <>

View revisions

Also available in: Atom