Hi Serge,
When we use ocf_run in some pgsql, a problem is left.
In ocf_run, ocf_run outputs log as an error in the case of 2 the practice
result of the command.
ocf_run() {
(snip)
else
if [ ! -z "$output" ]; then
ocf_log err "$output"
else
ocf_log err "command failed: $*"
fi
return $rc
fi
}
But, in pgsql side, the log is output by an error or warning in the case of 2
the practice result of
the command by a loglevel variable.
pgsql_monitor() {
local loglevel
(snip)
runasowner -q "$OCF_RESKEY_psql $psql_options -c 'select now();'"
rc=$?
if [ $rc -ne 0 ]; then
ocf_log $loglevel "PostgreSQL $OCF_RESKEY_pgdb isn't running"
if [ $rc -eq 1 ]; then
ocf_log err "Fatal error (out of memory, file not found, etc.)
occurred while executing
the psql command."
elif [ $rc -eq 2 ]; then
ocf_log $loglevel "Connection error (connection to the server went
bad and the session was
not interactive) occurred while executing the psql command."
elif [ $rc -eq 3 ]; then
ocf_log err "Script error (the variable ON_ERROR_STOP was set)
occurred while executing
the psql command."
fi
return $OCF_ERR_GENERIC
fi
(snip)
This difference confuses an operator.
Best Regards,
Hideo Yamauchi.
_______________________________________________________
Linux-HA-Dev: [email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/