Thursday, July 1, 2010

DataStage Job Compile - Receives "Failed to invoke GenRuntime using phantom process helper." error.

Problem(Abstract)

When attempting to compile a job, user receives: Failed to invoke GenRuntime using phantom process helper.

Cause

Possible causes for this error include:
Servers /tmp space was full

Jobs status incorrect.
Format problem with projects uvodbc,config file
Corrupted DS_STAGETYPES file
Internal locks.


Diagnosing the problem

If the steps under Resolving the problem do not resolve the problem, proceed with the following steps,


Before opening a PMR with support, turn on server side tracing, attempt to compile the problem job, turn off server side tracing, and gather the tracing information.

  1. Turn on server side by connecting to the server with the DataStage Administrator client.
  2. High light the project which has the problem job.
  3. Click on the Properties button.
  4. In the Properties window, click the Tracing tab
  5. Click on the Enabled check box
  6. Click the OK button
  7. With a new DataStage Designer connection, attempt to compile the job.
  8. With the DataStage Administrator client, go back into the projects properties
  9. Select the Tracing tab
  10. Uncheck the Enabled check box
  11. For each DSRTRACE entry do the following:
    a) High light the entry and click View
    b) High light the contents of the display and click on Copy
    c) Paste the copied information into Notepad
  12. Open a PMR with support and supply the Notepad information.

Resolving the problem


Servers /tmp space full:

Clean up space in /tmp


Jobs status is incorrect:

DataStage Director->Job->Clear Status File


Format problem with projects uvodbc.config file:

Confirm uvodbc.config has the following entry/format:
[ODBC DATA SOURCES]

DBMSTYPE = UNIVERSE
network = TCP/IP
service = uvserver
host = 127.0.0.1

Corrupted DS_STAGETYPES:

  1. Connect to the DataStage server,change directory to DSEngine, source dsenv ( . ./dsenv)
    $ bin/uvsh
    >LOGTO projectname (case sensitive)
  2. Set a file pointer RTEMP to the template DS_STAGETYPES file
    >SETFILE /Template/DS_STAGETYPES RTEMP
  3. Check that all of the entries in the template DS_STAGETYPES file are present in the project's DS_STAGETYPES file
    >SELECT RTEMP
    * this will return a count of records found in the template DS_STAGETYPES file
    >COUNT DS_STAGETYPES
    * this will return a count of records found in the project's DS_STAGETYPES file
    * These numbers should be the same
  4. If the numbers differ and some records are missing from the project's DS_STAGETYPES file
    >COPY FROM RTEMP TO DS_STAGETYPES ALL OVERWRITING
  5. exit Universe shell
    >Q

Internal locks:
  1. Connect to the DataStage server,change directory to DSEngine, source dsenv ( . ./dsenv)
  2. Change directory to the projects directory that has the job generating the error.
  3. Execute the following replacing with the actual job name.
    $ $DSHOME/bin/uvsh "DS.PLADMIN.CMD NOPROMPT CLEAR LOCKS "