|
Problem(Abstract) |
You might experience problems if you run a command that
affects the status of a server, such as the dscontrol server up and
dscontrol server down commands, after a manager cycle has already
retrieved the weights of the servers.
If you run these commands, it might overwrite the values that are saved
during the manager cycle and cause the serverUp script to run
unexpectedly. |
|
|
|
Cause |
Weights are set by the manager during a manager cycle. At
the start of the manager cycle, the manager retrieves the current weights
from the executor function. The manager uses these values as the last
known weight to determine if the status of a server has changed.
If you issue a server down command, for example, dscontrol
server down, the executor function saves the current weight of the
server and associates a new weight to the server with a value of -1. When
you issue a server up command, for example, dscontrol server
up, a call is made to the executor function to revert the weight of
the server to the saved value. The system sets a flag to indicate that the
server is no longer marked down by the user.
If the server up command occurs after the manager has retrieved the
weights, the executor function overwrites the weight that is used to
determine if the server state has changed. This process does not cause any
side effects unless the server is also quiesced.
A quiesced server has a weight of 0, which is the same value as a server
that is detected down by the advisor. If you run a server up
command on a quiesced server, the executor function saves a value of 0 for
the weight that determines if the state of the server has changed. When
the server is unquiesced, the serverUp script might run because of this
saved value.
The chances of experiencing this problem increase with larger
configurations because the manager cycle takes longer to run. Also, there
is a higher probability that the manager cycle will be in progress when
the server up command is issued. |
|
|
Resolving the
problem |
Ignore the serverUp script if a corresponding serverDown
script is not present. Increasing the manager cycle decreases the
occurrences of this problem. |
|
|
|
|
|
|