On Wed, Dec 29, 2010 at 02:40:47PM +0100, Alexander Krauth wrote:
> # HG changeset patch
> # User Alexander Krauth <[email protected]>
> # Date 1293630041 -3600
> # Node ID 69cd9345a879e7764b4457834ded0093274d0322
> # Parent  66f7e65af509813bfa1e0135d0bf0d968ed92837
> High: SAPInstance: New parameter: SHUTDOWN_METHOD

Applied.

> diff -r 66f7e65af509 -r 69cd9345a879 heartbeat/SAPInstance
> --- a/heartbeat/SAPInstance   Wed Dec 29 14:34:03 2010 +0100
> +++ b/heartbeat/SAPInstance   Wed Dec 29 14:40:41 2010 +0100
> @@ -24,6 +24,7 @@
>  #    OCF_RESKEY_START_WAITTIME   (optional, to solve timing problems during 
> J2EE-Addin start)
>  #    OCF_RESKEY_AUTOMATIC_RECOVER    (optional, automatic startup recovery 
> using cleanipc, default is false)
>  #       OCF_RESKEY_MONITOR_SERVICES     (optional, default is to monitor 
> critical services only)
> +#       OCF_RESKEY_SHUTDOWN_METHOD      (optional, defaults to NORMAL, KILL: 
> terminate the SAP instance with OS commands - faster, at your own risk)
>  #       OCF_RESKEY_ERS_InstanceName     (optional, InstanceName of the ERS 
> instance in a Master/Slave configuration)
>  #       OCF_RESKEY_ERS_START_PROFILE    (optional, START_PROFILE of the ERS 
> instance in a Master/Slave configuration)
>  #    OCF_RESKEY_PRE_START_USEREXIT   (optional, lists a script which can be 
> executed before the resource is started)
> @@ -142,6 +143,11 @@
>    <shortdesc lang="en">Services to monitor</shortdesc>
>    <content type="string" 
> default="disp+work|msg_server|enserver|enrepserver|jcontrol|jstart"/>
>   </parameter>
> +  <parameter name="SHUTDOWN_METHOD" unique="1" required="0">
> +  <longdesc lang="en">Usual a SAP Instance is stopped by the command 
> 'sapcontrol -nr InstanceNr -function Stop'. SHUTDOWN_METHOD=KILL means to 
> kill the SAP Instance using OS commands. SAP processes of the instance are 
> terminated with 'kill -9', shared memory is deleted with 'cleanipc' and the 
> 'kill.sap' file will be deleted. That method is much faster than the 
> gracefull stop, but the instance does not have the chance to say goodbye to 
> other SAPinstances in the same system. USE AT YOUR OWN RISK !!</longdesc>
> +  <shortdesc lang="en">Shutdown graceful or kill a SAP instance by 
> terminating the processes. (normal|KILL)</shortdesc>
> +  <content type="string" default="normal"/>
> + </parameter>
>   <parameter name="ERS_InstanceName" unique="1" required="0">
>    <longdesc lang="en">Only used in a Master/Slave resource configuration:
>  The full qualified SAP enqueue replication instance name. e.g. 
> P01_ERS02_sapp01ers. Usually this is the name of the SAP instance profile.
> @@ -453,7 +459,18 @@
>  #
>  cleanup_instance() {
>    pkill -9 -f -U $sidadm $InstanceName
> -  $DIR_EXECUTABLE/cleanipc $InstanceNr remove
> +  ocf_log info "Terminated instance using 'pkill -9 -f -U $sidadm 
> $InstanceName'"
> +
> +  # it is necessary to call cleanipc as user sidadm if the system has 
> 'vmcj/enable = ON' set - otherwise SHM-segments in /dev/shm/SAP_ES2* cannot 
> beremoved
> +  su - $sidadm -c "cleanipc $InstanceNr remove"
> +  ocf_log info "Tried to remove shared memory resources using 'cleanipc 
> $InstanceNr remove' as user $sidadm"
> +
> +  if [ -f "/usr/sap/$SID/$InstanceName/work/kill.sap" ]
> +  then
> +    rm -f /usr/sap/$SID/$InstanceName/work/kill.sap
> +    ocf_log info "Deleted /usr/sap/$SID/$InstanceName/work/kill.sap"
> +  fi
> +
>    return 0
>  }
>  
> @@ -549,6 +566,13 @@
>  sapinstance_stop() {
>    sapuserexit PRE_STOP_USEREXIT "$OCF_RESKEY_PRE_STOP_USEREXIT"
>  
> +  if [ "$OCF_RESKEY_SHUTDOWN_METHOD" = "KILL" ]
> +  then
> +    ocf_log info "Stopping SAP Instance $SID-$InstanceName with shutdown 
> method KILL!"
> +    cleanup_instance
> +    return $OCF_SUCCESS
> +  fi
> +
>    check_sapstartsrv
>    rc=$?
>    if [ $rc -eq $OCF_SUCCESS ]; then
> _______________________________________________________
> Linux-HA-Dev: [email protected]
> http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
> Home Page: http://linux-ha.org/
_______________________________________________________
Linux-HA-Dev: [email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/

Reply via email to