Consultor Eletrônico



Kbase P3215: How to produce a stacktrace from a protrace.pid file on SCO
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   7/27/2006
Status: Verified

GOAL:

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

GOAL:

How to convert a protrace file on SCO

GOAL:

How to get a readable stack trace 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 with nm:

nm -xvp [executable] > temp.out

Where
[executable] is the name of the executable in which the core dump occurs, it is very important to be using the correct one. This can be found in the protrace.pid file on the line after "Command line arguments are"; for example: /usr/dlc/bin/_progres.

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.


2) Format the file:

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


3) Copy the protrace.pid file to a temporary file (for example protrace.temp) and use vi to remove the first 3 comments in the protrace.temp file.

Example: remove these 3 lines -

PROGRESS stack trace as of <date time >
Command line arguments are
/usr/dlc/bin/_progres -db myDb -pf myPf.pf


4) Use the trc command to produce the stack trace from the protrace.temp file; this command is in the same directory as the Progress executable that generated the stack trace; in our example: /usr/dlc/bin.

/usr/dlc/bin/trc temp.done protrace.temp > stack.823

5) The stack trace file (stack.823) 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.