1LAMSHRINK(1) LAM COMMANDS LAMSHRINK(1)
2
3
4
6 lamshrink - Shrink a LAM universe.
7
9 lamshrink [-dhv] [-w <delay>] <nodeid>
10
12 -d Print detailed debugging information.
13
14 -h Print useful information on this command.
15
16 -v Be verbose.
17
18 <nodeid> Remove the LAM node with this ID.
19
20 -w <delay> Notify processes on the doomed node and pause for <delay>
21 seconds before proceeding.
22
24 An existing LAM session, initiated by lamboot(1), can be shrunk to in‐
25 clude less nodes with lamshrink. One node is removed for each invoca‐
26 tion. At a minimum, the node ID is given on the command line. Once
27 lamshrink completes, the node ID is invalid across the remaining nodes
28 (as can be seen by running lamnodes(1)).
29
30 Existing application processes on the target node can be warned of im‐
31 pending shutdown with the -w option. A LAM signal (SIGFUSE) will be
32 sent to these processes and lamshrink will then pause for the given
33 number of seconds before proceeding with removing the node. By de‐
34 fault, SIGFUSE is ignored. A different handler can be installed with
35 ksignal(2).
36
37 All application processes on all remaining nodes are always informed of
38 the death of a node. This is also done with a signal (SIGSHRINK),
39 which by default causes a process's runtime route cache to be flushed
40 (to remove any cached information on the dead node). If this signal is
41 re-vectored for the purpose of fault tolerance, the old handler should
42 be called at the beginning of the new handler. The signal does not, by
43 itself, give the process information on which node has been removed.
44 One technique for getting this information is to query the router for
45 information on all relevant nodes using getroute(2). The dead node
46 will cause this routine to return an error.
47
48 FAULT TOLERANCE
49 If enabled with lamboot(1), LAM will watch for nodes that fail. The
50 procedure for removing a node that has failed is the same as lamshrink
51 after the warning step. In particular, the SIGSHRINK signal is deliv‐
52 ered.
53
55 lamshrink -v n1 Remove LAM on n1. Report about important steps as
56 they are done.
57
58 lamshrink n30 -w 10
59 Inform all processes on LAM node 30, that the node will be dead in
60 10 seconds. Wait 10 seconds and remove the node. Operate silent‐
61 ly.
62
64 lamboot(1), lamnodes(1), ksignal(2), getroute(2)
65
66
67
68LAM 7.1.2 March, 2006 LAMSHRINK(1)