InfoSphere DataStage: How to calculate the value for the T30FILE parameter in uvconfig?
Question
How do I calculate the value for the parameter T30FILE in the uvconfig file?
Answer
The T30FILE parameter in the uvconfig file specifies the number of dynamic files that may be opened concurrently in DataStage Server. This setting is system wide, not by project. Some examples of dynamic files are the repository files (such as job's logs, status, and config files) and also the hash files you can create using server jobs. By default, this value is set to 200 but a system running multiple jobs concurrently may need to access more than 200 dynamic files at a given time.
If InfoSphere DataStage hits the limit of open dynamic files, jobs will abort and the error "Unable to allocate Type 30 descriptor, table is full" will be shown in the job's log. To solve this problem you need to stop the InfoSphere DataStage services, increase the T30FILE parameter in the $DSHOME/uvconfig file, regenerate the configuration, and then restart InfoSphere DataStage services.
Before you can determine what the proper value is for T30FILE, you will need to increase it past the current limit since that limit is being reached. Increase T30FILE by 200 for testing by following the directions that follow in this document.
To determine a proper value for T30FILE you must first find out how many dynamic files your system is opening during peak usage. To do this, use the command smat. This command will list all the dynamic files currently open (each line of the report represents a file).
In Unix, you can use wc to count the number of lines the command smat returns. Before you run this command source the dsenv file.
$DSHOME/bin/smat -d|wc -l
In Microsoft Windows you cannot use the wc command unless you have MKS installed. You still can list the number of open files by running from the Engine directory. For example:
bin\smat -d
This command does not affect the execution of your jobs. Rather, it only confirms how many dynamic files are open at a given time. Using this value you can identify a more accurate value for T30FILE. The new value should be the maximum number you see when running the smat command plus 20 - 25% (to be sure to allow for peak workloads). Run the command smat several times to get a more accurate number and then use the maximum value you identify as the base for your calculation. For example, if you run the command smat 20 times and the highest value you see is 225, then try setting T30FILE to 275.
Ideally, you don't want to set T30FILE to a very high value because this will impact the performance of InfoSphere DataStage. Values higher than 1000 are not recommended and you should not use them unless they are recommended by IBM Support.
To change the value of T30FILE, follow this procedure:
- Make a backup the file $DSHOME/uvconfig.
- Stop InfoSphere DataStage.
- Edit the uvconfig file and set T30FILE to the new value.
- in Unix: bin/uv -admin -regen
- in Windows: bin\uvregen