1LAMSHRINK(1)                     LAM COMMANDS                     LAMSHRINK(1)
2
3
4

NAME

6       lamshrink - Shrink a LAM universe.
7

SYNTAX

9       lamshrink [-dhv] [-w <delay>] <nodeid>
10

OPTIONS

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

DESCRIPTION

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

EXAMPLES

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

SEE ALSO

64       lamboot(1), lamnodes(1), ksignal(2), getroute(2)
65
66
67
68LAM 7.1.2                         March, 2006                     LAMSHRINK(1)
Impressum