Managing Serviceguard Sixteenth Edition, March 2009

halted first, then pkg2. If there were a third package, pkg3, that depended on
pkg1, pkg3 would be halted first, then pkg1, then pkg2.
If the halt script for any dependent package hangs, by default the package depended
on will wait forever (pkg2 will wait forever for pkg1, and if there is a pkg3 that
depends on pkg1, pkg1 will wait forever for pkg3). You can modify this behavior
by means of the successor_halt_timeout parameter (page 265). (The successor of a
package depends on that package; in our example, pkg1 is a successor of pkg2;
conversely pkg2 can be referred to as a predecessor of pkg1.)
Dragging Rules for Simple Dependencies
The priority parameter (page 267) gives you a way to influence the startup, failover, and
failback behavior of a set of failover packages that have a configured_node
failover_policy, when one or more of those packages depend on another or others.
The broad rule is that a higher-priority package can drag a lower-priority package,
forcing it to start on, or move to, a node that suits the higher-priority package.
NOTE: This applies only when the packages are automatically started (package
switching enabled); cmrunpkg will never force a package to halt.
Keep in mind that you do not have to set priority, even when one or more packages
depend on another. The default value, no_priority, may often result in the behavior
you want. For example, if pkg1 depends on pkg2, and priority is set to no_priority
for both packages, and other parameters such as node_name and auto_run are set as
recommended in this section, then pkg1 will normally follow pkg2 to wherever both
can run, and this is the common-sense (and may be the most desirable) outcome.
The following examples express the rules as they apply to two failover packages whose
failover_policy (page 266) is configured_node. Assume pkg1 depends on pkg2, that
node1, node2 and node3 are all specified (not necessarily in that order) under
node_name (page 263) in the configuration file for each package, and that failback_policy
(page 267) is set to automatic for each package.
168 Planning and Documenting an HA Cluster