When a DataStage job runs, it creates one or more phantom processes on your DataStage server. Generally, one phantom process for the job, and one for each active stage within the job. Each phantom process has its own log file that records information about the process’s execution. This information may be useful for debugging problems.
In each project there is an &PH& directory. This is used to write entries by the phantom process and they have this form:
1. DSD.RUN_InternalDate_InternalTime
2. DSD.STAGERUN_ InternalDate_InternalTime
All log files end with a time and date suffix. The time is seconds since midnight, and the date in a Universe Julian date. These dates and times are usually close to those found in DataStage Director on the Control event Starting job.
As &PH& directory is loading with log files with each stage, directory can become large and affect the performance of the server itself. Even having these many log files will waste your server memory.
There is no exact number that could cause a problem due to variances in computing power. Generally this should be cleaned as regular maintenance. The more jobs running the quicker it will grow. You can check how many exist with the command: `ls |wc -l` in the relevant project directory.
There are a couple ways to fix this problem:
METHOD-1:
Log into Administrator–>Projects–>Command and type:
CLEAR.FILE &PH&
This command SHOULD ONLY be run when you have no jobs running or users logged into DataStage clients.
METHOD-2:
From $DSHOME:
1. source the dsenv file:
. ./dsenv
2. type:
./bin/uvsh
3. type:
LOGTO <ProjectName>
4. type:
CLEAR.FILE &PH&
You can create a shell script to manually delete the files. To ensure there are no locks only delete files that are from finished jobs. You need to make sure the files are older than the longest running job.
Instead of checking for running jobs before clearing &PH& directory, you can just delete files older than a week periodically. This will ensure datastage server will run smoothly.