Managing HP Serviceguard for Linux, Seventh Edition, July 2007

Understanding Serviceguard Software Components
How Packages Run
Chapter 3 65
Package halting normally means that the package halt script executes
(see the next section). However, if a failover package’s configuration has
the service_fail_fast_enabled flag set to yes for the service that
fails, then the node will halt as soon as the failure is detected. If this flag
is not set, the loss of a service will result in halting the package
gracefully by running the halt script.
If auto_run is set to yes, the package will start up on another eligible
node, if it meets all the requirements for startup. If auto_run is set to no,
then the package simply halts without starting up anywhere else.
NOTE If a package is dependent on a subnet, and the subnet on the primary
node fails, the package will start to shut down. If the subnet recovers
immediately (before the package is restarted on an adoptive node), the
package can be restarted on the primary node and does not switch to
another node in this case.
When a Package is Halted with a Command
The Serviceguard cmhaltpkg command has the effect of executing the
package halt script, which halts the services that are running for a
specific package. This provides a graceful shutdown of the package that
is followed by disabling automatic package startup (AUTO_RUN).
You cannot halt a multi-node or system multi-node package unless all
packages that have a configured dependency on it are down. Use
cmviewcl to check the status of dependents. For example, if pkg1 and
pkg2 depend on PKGa, both pkg1 and pkg2 must be halted before you
can halt PKGa.
NOTE If you use cmhaltpkg command with the -n <nodename> option, the
package is halted only if it is running on that node.
The cmmodpkg command cannot be used to halt a package, but it can
disable switching either on particular nodes or on all nodes. A package
can continue running when its switching has been disabled, but it will
not be able to start on other nodes if it stops running on its current node.