Consultor Eletrônico



Kbase 11199: Orphan processes taking up CPU time - how to clean them up
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   31/08/1999
Orphan processes taking up CPU time - how to clean them up

Title: Orphan processes taking up CPU - how to clean them up

KnowledgeBase number: 11199
Creation Date: 1992/11/02 (jom)
Modified Date: 1999/08/31 (cao)
This document applies to: unix, defunct and zombie processes

Version and Release Number: All versions of Progress

Summary:

This kbase is designed to assist customers with trying to clean up
after defunct and zombie processes. This kbase should only be used
after contacting Progress Technical Support for assistance in
determining what caused the initial problem with the process going
defunct and ultimately becoming a zombie process. In other words, if
you have a Progress process that goes defunct and ultimately becomes
a zombie process, it may be due to user error, Progress or Operating
System Bug.

This kbase is designed to assist you in cleaning up after those
processes once you have determined the initial cause of the problem
in the first place.

For an explanation of defunct processes, please reference kbase 11054.

Some customers have reported that if their Progress users do not
exit properly from the Progress application the Progress server
process becomes an orphan process. This orphan process ends up
taking valuable CPU and system time. This will eventually
affect performance as the number of orphan processes grow. A fix
is to scan the processes (ps -fe|pg) to find the orphan process,
and kill it. Caution should always be used when killing processes.
You can start by trying to issue a kill -0, kill -1, a kill -15 etc..
If the process does not terminate - then you can issue a kill -9.
This type of a kill is one of the worst kill commands because unix and
Progress cannot trap or handle the signals. In the case of a zombie,
this is probably not a bad thing - but still use caution when the
process is not a zombie.

Orphaned processes are recognized by any _progress or _mprosrv
process with a parent process ID of 1. You could create a cron job
to execute several times a day to clean up after orphaned or zombie
processes while continuing to investigate the cause. Cron jobs
which issue kill statements are considered to be kill scripts and
are frowned upon by Progress, because inappropriate use of such
scripts could cause a database to be shutdown during production hours
if used incorrectly.

Please consult with Progress Technical Support before making use of
kill jobs which may inhibit us from locating bugs or addressing user
errors.