You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
1.9 KiB

diff --git a/heartbeat/SAPHana b/heartbeat/SAPHana
index 412152b..1ff6a7d 100644
--- a/heartbeat/SAPHana
+++ b/heartbeat/SAPHana
@@ -356,7 +356,8 @@ function get_hana_attribute()
local attr_node=$1
local attr_name=$2
local attr_store=${3:-reboot} # DONE: PRIO5 get this (optional) from parameter
- crm_attribute -N ${attr_node} -G -n "$attr_name" -l $attr_store -q; rc=$?
+ local attr_default=${4:-}
+ crm_attribute -N ${attr_node} -G -n "$attr_name" -l $attr_store -q -d "$attr_default"; rc=$?
super_ocf_log info "FLOW $FUNCNAME rc=$rc"
return $rc
}
@@ -373,9 +374,10 @@ function set_hana_attribute()
local attr_value=$2
local attr_name=$3
local attr_store=${4:-reboot} # DONE: PRIO5 get this (optional) from parameter
+ local attr_default=${5:-}
local rc=1
local attr_old=""
- attr_old=$(get_hana_attribute $attr_node $attr_name $attr_store); get_rc=$?
+ attr_old=$(get_hana_attribute $attr_node $attr_name $attr_store $attr_default); get_rc=$?
if [ "$attr_old" != "$attr_value" ]; then
super_ocf_log debug "DBG: SET attribute $attr_name for node ${attr_node} to ${attr_value} former ($attr_old) get_rc=$get_rc "
crm_attribute -N $attr_node -v $attr_value -n "$attr_name" -l $attr_store; rc=$?
@@ -578,8 +580,8 @@ function saphana_init() {
remoteHost=$(get_hana_attribute ${NODENAME} ${ATTR_NAME_HANA_REMOTEHOST[@]});
if [ -z "$remoteHost" ]; then
if [ ${#otherNodes[@]} -eq 1 ]; then # we are a 2 node cluster, lets assume the other is the remote-host
- remoteHost=${otherNodes[0]}
- remoteNode=$remoteHost
+ remoteNode=${otherNodes[0]}
+ remoteHost=$(get_hana_attribute $remoteNode ${ATTR_NAME_HANA_VHOST[@]} "$remoteNode");
super_ocf_log debug "DBG: auto-guess remoteHost=$remoteHost"
else
super_ocf_log debug "DBG: Could not auto-guess remoteHost out of list (${otherNodes[@]})"