Consultor Eletrônico



Kbase 33215: How to produce a stacktrace from a protrace.pid file on SCO
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   10/05/1998
Solution ID: P3215

GOAL:

How to produce a stacktrace from a protrace.pid file on SCO

FIX:

The following steps are used to create a readable stack trace from a protrace.pid file produced during a Progress core dump. (Note that the file protrace.pid does not actually have the extension ".pid". The extension is the process ID (PID) of the process that received the memory violation. For instance, if the process ID was 823, then the file would be named protrace.823.)

1) Translate the system calls from the executable:

nm -xvp $DLC/bin/_progres > temp.out

NOTE: The nm program may not be available on all SCO systems. It is part of the Development toolkit which is licensed separately from SCO. Also, the executable may not always be _progres -- sometimes, a core dump may be produced by a server or background process. In this case, the appropriate executable (such as _mprosrv or _mprshut) should be substituted in place of _progres.

2) Format the file:

cat temp.out | sed -e '/^[ ^I]/d'| sort -n | awk '{ print $1 " " $3}' > temp.done

3) Use vi to remove the first 3 comments in the protrace.pid file. Example:

PROGRESS stack trace as of Tue Oct 22 12:25:13 2001
Command line arguments are
/usr/dlc7c/bin/_progres -pf /u/Rona/Bin/Vardef/params.m.pf

4) Produce the stack trace from the protrace.pid file:

$DLC/bin/trc temp.done protrace.12459 > stack.12459

5) The stack trace file (stack.12459) will be used by Progress Technical Support to isolate the cause of the problem. Both the original protrace.pid and the converted stack file should be sent to Technical Support for review.