Statistics
| Branch: | Tag: | Revision:

root / src @ 942817f2

Name Size
  Ganeti
AutoConf.hs.in 4.5 kB
OLD-NEWS 19 kB
README 4.5 kB
ganeti-kvmd.hs 1.2 kB
ganeti-metad.hs 1.3 kB
ganeti-mond.hs 1.2 kB
ganeti-wconfd.hs 1.1 kB
haddock-prologue 251 Bytes
hconfd.hs 1.2 kB
hluxid.hs 1.2 kB
hs2py.hs 1.5 kB
htools.hs 824 Bytes
lint-hints.hs 1 kB
mon-collector.hs 1 kB
rpc-test.hs 8.6 kB

Latest revisions

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

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

64f3a6ea 04/17/2014 06:56 pm Petr Pudlak

Add a livelock file for the Luxi daemon

The file is initialized and kept within JQStatus.
It is temporarily assigned to jobs spawned by Luxi until they create
their own livelock files.

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

35e3ce28 04/17/2014 06:56 pm Petr Pudlak

Move `isDead` from DeathDetection to Utils/Livelock

.. as it has nothing special to do with WConfd and fits the new module
better.

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

View revisions

Also available in: Atom