Kbase 13188: How to use xdb to obtain stack trace if no core is created.
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  10/05/1998 |
|
How to use xdb to obtain stack trace if no core is created.
INTRODUCTION:
=============
Ihis Product Services Technical Support Knowledgebase entry explains
how to produce an ascii file, when there is not core file dumped, or
adb/sdb fails. This entry should be used after "How to use adb or sdb
to dump core file for PSC Tech Support" (Entry 3167).
When Progress generates the following error messages:
* SYSTEM ERROR: Bus error. (48)
* SYSTEM ERROR: Memory violation. (49)
it means that the unix kernel intercepted a system error, and is
unable to continue.
If a core file is produced, use Entry 3167 to obtain a stack trace.
In some cases, the core file can't be analyzed by adb/sdb, or no core
file is actually produced. In these cases, we can use other tools
to get this information. The unix tool used to do this on the HP
platform is xdb. Xdb will suspend the process while it is running
and allow you to obtain a stack trace.
HOW TO USE
==========
Important commands for the xdb tool:
Command Meaning
------- -----------------------------------------------
>@ file Captures output to file.
c Continue execution
t Gives a stack trace, i.e. all internal function
called to this point in the program
q Quit dbx tool
HP-9000:
Type the following command to begin xdb:
xdb -P PID executable
where PID is the process ID of the process that you want the
stack trace from and the executable is the full path and executable
that us being used by the process.
This will bring you to a greater than (>) sign.
Type ">@ filename" to save output to the file filename.
(The line will look like ">>@ filename")
Type "t" to obtain a stacktrace.
Type "c" to let the process continue.
To obtain another stack trace from the process type "CTRL-C" in
the process you are tracking. This will bring the debugger back to
the greater than sign and you can repeat the trace step.
To quit out of the debugger type "q". The file will be saved in
your current directory.
For further documentation on xdb please refer to the man pages on
your particular machine.
Progress Software Technical Support Note # 13188