Statistics
| Branch: | Tag: | Revision:

root / Ganeti / Luxi.hs @ 4bc33d60

History | View | Annotate | Download (8.6 kB)

# Date Author Comment
6bc39970 12/30/2010 03:41 pm Iustin Pop

Add 'Read' instances for most objects

This allows a cluster structure to be easily serialized via "read";
together with the already existing instances of Show, this gives a
poor man's serialization/deserialization implementation.

The patch also exports the compDetailedCV function from Cluster.hs, so...

edd0a48f 12/20/2010 02:20 pm Iustin Pop

Add the new OpQueryGroups opcode definition

Signed-off-by: Iustin Pop <>
Reviewed-by: Balazs Lecz <>

95f490de 06/08/2010 03:48 am Iustin Pop

Optimise the Luxi.recvMsg function

Since the current buffer cannot contain (during network reads) an EOM,
we should look for the EOM only in the newly-received string. While
this shouldn't make much difference, in some tests it cuts the recvMsg
total time by around half....

04282772 06/08/2010 01:09 am Iustin Pop

Complete the client Luxi implementation

All current Luxi calls are supported after this patch. A bug in
ArchiveJob is also fixed (Ganeti's job IDs are strings).

9622919d 06/08/2010 12:35 am Iustin Pop

Add support for more LUXI calls

While not are directly useful, having them will open some possibilities
(e.g. polling for job changes in hbal's -X mode, and auto-archiving the
jobs once they are successful).

683b1ca7 06/02/2010 11:55 pm Iustin Pop

Change the Luxi operations structure

Currently, we define the LuxiOp type as a simple enumeration, and leave
the arguments structure to the users of the Ganeti.Luxi module. This is
suboptimal for a couple of reasons: first, we decouple the operation
type from operation arguments, and that means we don't use the type...

c96d44df 05/27/2010 11:37 pm Iustin Pop

Replace fromJResult with annotateJResult

This patch removes all old uses of fromJResult with the annotated
version, and removes the non-annotated version. All JSON parsing points
should now have annotated errors.

5182e970 02/25/2010 03:39 pm Iustin Pop

A number of small fixes from hlint

0903280b 02/25/2010 02:34 pm Iustin Pop

Fix unused imports for ghc 6.12

GHC 6.12 has become more picky about unused imports, so we need to
remove/tighten some of them.

f89235f1 12/01/2009 12:47 pm Iustin Pop

Read cluster tags in the LUXI backend

262f3e6c 11/06/2009 07:23 pm Iustin Pop

Change the Utils.fromObj signature

Currently the fromObj function takes a JSON object which is then
converted into a list of (String, JSValue) in which we make a lookup.
However, most of the callers of this function call it repeatedly on the
same object, which means we do the object→list conversion repeatedly....

3a3c1eb4 10/15/2009 11:33 am Iustin Pop

More hlint fixes

This makes (for now) the code hlint-clean. This is per se not a huge
gain, but it allows easier tracking of regressions in style later
(one-two new violations are easier to diagnose when not hidden among 20
“known” ones).

9a2ff880 10/14/2009 11:56 am Iustin Pop

Add two specialized Luxi calls

This are higher level wrappers over the basic callMethod.

Signed-off-by: Iustin Pop <>

a1b5eeaf 10/02/2009 03:54 pm Iustin Pop

Add definitions for more Luxi calls

6583e677 10/02/2009 03:54 pm Iustin Pop

Split the Luxi generic parts from the loader

The Luxi loader implements both a generic Ganeti Luxi client and the
loader; it is better if these two are separated. The patch adds a
Ganeti/Luxi.hs (not under HTools!) since that is generic for Ganeti, and
not related necessarily to htools.