Unable to open descriptor file to update

An IBM® InfoSphere® DataStage® job fails with the error message Unable to open descriptor file to update: Permission denied.

Symptoms

Files can not be overwritten or deleted by users other than the dsadm user.

Causes

The umask setting 022 is used by the dsadm user to run InfoSphere DataStage jobs. This setting causes InfoSphere DataStage jobs that are scheduled via the Director client to fail with the following errors.
main_program: Unable to open descriptor file to create: Permission denied 
main_program: Error writing ORCHESTRATE File Data Set descriptor for '/dataset/TEST.ds'.
main_program: Fatal Error: Could not create output file /dataset/TEST.ds. filesystem related error

Diagnosing the problem

Design a simple InfoSphere DataStage job to create either a dataset or a sequential file and follow these steps to test the umask value of the dsadm user and file permissions.
  1. Open the job properties.
  2. In the Before job subroutine, select ExecSH from the drop-down list and type umask under Input Value:
  3. Open the Director client and schedule the job to run every day. This will create the crontab script dsr_sched.sh on the server.
  4. After the job has run, open the job log and look for the umask value.

If the umask value in the job log is 022, then follow below steps to resolve file permission issues.

Resolving the problem

Add umask 002 in dsr_sched.sh script. Edit <IS_Install_location>/Server/Projects/<Project Name>/dsr_sched.sh and add the line umask 002 as shown here.

uvhome=$2
shift 2
cd $project
. $uvhome/dsenv
umask 002
$uvhome/bin/uvsh "DSR.SCHED $*"

Now schedule a test job and check the job log for the umask value. The umask value should be 002 and file permissions should be as -rw-rw-r--.