Skip Ribbon Commands
Skip to main content
Navigate Up
Sign In

Quick Launch

Average Rating:

(38 Ratings)
facebook Twitter
Email
Print Bookmark Alert me when this article is updated

Feedback

Utility to retrieve the stack trace from a core file or a hanging Informatica process (pmstack)
Problem Description

When running an application on UNIX, it may fail with a signal exception and cause a core file, or it may stop responding (hang) and must be killed causing a core file.

 

The pmstack utility is a UNIX script file that retrieves the stack trace from a core file and creates an output file that can be sent to Informatica support for analysis of the issue. ​

Cause
Solution

The pmstack utility can be used to extract the stack trace from a core file or a hanging/slow Informatica process (pmserver, pmrepserver, etc.) on UNIX.

  1. Log on as the UNIX user that starts the Informatica process.

  2. Go to the <INFA_HOME>/tools/debugtools/pmstack/ directory.

  3. Run the following commands: 

  4. Execute the utility with one or more of following options:

  5. Parameter

    Flags

    Required / Optional

    Mode (Core File/Process)

    Des​​cription

    Debugger Name -d Optional ​Core file mode/Process mode Specify dbx or gdb as debugger name. Default debugger is gdb.
    Corefile Name -c Optional ​Core file mode Specify the core file name.
    Default file name is core.
    Process ID -p Optional ​Process mode Specify the hanging/slow process ID ​to be analyzed.​
    ​​Executable name ​-e ​Optional ​Core file mode​ ​​​​​Optional in corefilemode. Executable name on which the core file was generated. Use this to force the utility to use the executableName for crash report generation. Only executables under INFA_HOME and “JAVA” are supported.
    ​​Ignore Proc Stack ​-i ​Optional ​​Process mode​
    AIX ONLY
    ​Ignores procstack utility and uses dbx to collect stack from a hung process on AIX. This option has effect only on AIX and when used in ​processmode​.

    NOTE:
    If pmstack fails with unable to find the name of the executable the -e parameter must be used with the exact path included.​

    Usage examples

    To analyze a core file called core using gdb as the debugger:

    pmstack

    To analyze a core file called core using dbx as the debugger:

    pmstack -d dbx

    To analyze a core file called corefile_name with dbx as debugger:

    pmstack -c corefile_name -d dbx

    To analyze a process with a process ID pid with gdb as debugger:

    pmstack -p pid

To analyze a process with a process ID pid with dbx as debugger:

​pmstack -p pid​ -d dbx
    Note

    To determine the process ID execute the following command:

    ps -ef | grep process_name

Core File

To obtain a stack trace from a core file created by a PowerCenter process using pmstack, do the following:

  1. Go to the <INFA_HOME>/tools/debugtools/pmstack/ directory.
  2. Run pmstack on the core file.

    Example

    ./pmstack  -c <INFA_HOME>/server/bin/core.12345

    For details on options refer to the More Information section.
  3. Send the stack trace output created to Informatica Global Customer Support.


Running Process

To obtain a stack trace from a PowerCenter process (pmdtmpmserver, pmrepagent,pmdtmsvc2{Informatica Data Quality specific process}) using pmstack, do the following:

  1. Determine the Process ID of the PowerCenter process.

    For further details refer to the following KBs:

    HOW TO: Determine the process ID (PID) of a specific PowerCenter session process (KB 31655)

    HOW TO: Determine the process associated with an Integration Service or Repository Service (KB 21226)

  2. Go to the <INFA_HOME>/tools/debugtools/pmstack/ directory.
  3. Run the pmstack on the process.

    Example

    ./pmstack -p process_id

    For details on options refer to the More Information section.

  4. Send the stack trace output created to Informatica Global Customer Support.​
More Information
If the core file is called core, pmstack renames it to core_<currentpid>.

Trace file will be called <corefile_name>.trace or pid_<currentpid>.trace.


If your OS is SUSE Linux, then you would not get any stack information (that is, "in ?? ()"). You need to use the flag "-e" (available in pmstack v7) and specify the executable name.

Applies To
Product: PowerCenter; Data Quality; Metadata Manager; PowerExchange
Problem Type: Crash/Hang; Performance; Stability
User Type: Administrator; Developer; Architect
Project Phase: Optimize
Product Version: Data Explorer; Data Quality; Informatica 9.x; PowerCenter; PowerCenter 8.x; PowerCenter 9.x; Informatica 10.x
Database:
Operating System: Linux; AIX; Solaris; SUSE; HP-UX
Other Software:

Reference
The pmstack utility requires GDB that can be found at GDB: The GNU Project Debugger. It also supports the Solaris MDB debugger.

Attachments
Last Modified Date:4/21/2019 9:32 AMID:13652
People who viewed this also viewed

Feedback

Did this KB document help you?



What can we do to improve this information (2000 or fewer characters)