Statistics
| Branch: | Tag: | Revision:

root @ 942817f2

Name Size
  autotools
  daemons
  devel
  doc
  lib
  man
  qa
  src
  test
  tools
.ghci 21 Bytes
.gitignore 2.6 kB
COPYING 17.6 kB
INSTALL 10.5 kB
Makefile.am 76.9 kB
NEWS 133.8 kB
README 191 Bytes
UPGRADE 12.5 kB
autogen.sh 283 Bytes
configure.ac 25 kB
epydoc.conf.in 444 Bytes
pylintrc 2.9 kB
pylintrc-test 2.9 kB

Latest revisions

# Date Author Comment
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....

4cfa01f4 04/17/2014 06:59 pm Petr Pudlak

When starting the Luxi daemon, check if it's able to fork

If a Haskell program is compiled with -threaded, then inheriting open
file descriptors doesn't work, which breaks our job death detection
mechanism. (And on older GHC versions even forking doesn't work.)...

d182955c 04/17/2014 06:59 pm Klaus Aehlig

Make luxid aware of SIGCHLD

As luxid forks off processes now, it may receive SIGCHLD
signals. Hence add a handler for this. Since we obtain the
success of the child from the job file, ignoring is good
enough.

Signed-off-by: Klaus Aehlig <>...

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

Execute jobs as processes from Luxi

.. instead of just letting the master daemon to handle them.

We try to start all given jobs independently and requeue those that
failed.

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

4b887066 04/17/2014 06:59 pm Petr Pudlak

Add a function for failing a queued job

.. which will be used if the Luxi daemon attempts to start a job, but
fails.

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

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 <>...

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

Add utility function for creating fields with process IDs

.. using the POSIX type ProcessID.

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

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....

7b0a9096 04/17/2014 06:56 pm Petr Pudlak

Add an utility function for writing and replicating a job

Use the function where appropriate.

Also handling of CancelJob is slightly refactored to use ResultT, which
is used by the new function.

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

View all revisions | View revisions

Also available in: Atom