Salesforce

How to kill the AppServer processes on UNIX?

« Go Back

Information

 
TitleHow to kill the AppServer processes on UNIX?
URL NameP102545
Article Number000151534
EnvironmentProduct: Progress
Version: 9.x
Product: OpenEdge
Version: 10.x, 11.x
OS: UNIX
Question/Problem Description
How to kill the AppServer broker on UNIX?
How to kill the AppServer Agents on UNIX?
How to get a java core against the AppServer Broker ?
How to generate a thread dump against AppServer processes?
How to force generate a stack against the AppServer Agents?
When the asbman command stops responding (hangs) how to stop the AppServer processes?
When the asbman command stops responding (hangs) how to get a trace on the process?
Steps to Reproduce
Clarifying Information
Error Message
Defect Number
Enhancement Number
Cause
Resolution
While the "asbman -i [name] -kill" will get rid of the AppServer processes, it will not necessarily generate a stack trace for parallel investigations with the associated log files.  The following suggests another method.  Please note simply issuing a kill against the process is not necessarily the best way forward in all cases and needs to be taken under advisement.  Before proceeding refer to Article  How to perform an emergency shutdown of an AppServer Broker?   

Once a hang occurs, ie the ASBMAN command stops responding, while undertaking the Steps below, be sure to keep track (by PID) which _proapsv processes were killed before killing the broker and which needed to be killed afterwards.

STEPS:

Where "asbroker1" is the name of the AppServer;

1a) Find the PID's of _proapsv processes:
$    ps -ef | grep asbroker1 | grep _proapsv

1b) Then 'kill -8' half the _proapsv processes (ie the AppServer Agents) one-by-one:
$   kill -8 PID
NOTE: Killing of a process that is connected to a database via shared memory may cause the database to shutdown to preserve its integrity if the process killed is holding a lock, a latch, or a buffer.

1c) Copy the "core" (the core file will be in working directory) to core.<PID> and then kill the next _proapsv process.


2a) Find the PID of the AppServer Broker:
$    ps -ef | grep asbroker1 | grep AppServer

2b) Then 'kill -8' the Broker process, where the resulting "javacore" will be in working directory:
$    kill -8 `ps -ef | grep asbroker1 | grep AppServer | awk '{print $2}'`

3) Determine if the remaining _proapsv processes die on their own.
$    ps -ef | grep asbroker1 | grep _proapsv

4) 'kill -8' the remaining _proapsv processes .. all in one go this time:
$    kill -8 `ps -ef | grep asbroker1 | grep _proapsv | awk '{print $2}'`
NOTE: Killing of a process that is connected to a database via shared memory may cause the database to shutdown to preserve its integrity if the process killed is holding a lock, a latch, or a buffer.
Workaround
Notes
Progress Article: 

How to kill the AdminServer processes?   
 
Keyword Phrase
Last Modified Date11/20/2020 7:35 AM

Powered by