Possible issue with target file permissions usage of Operating System Profiles

阅读更多

In order to use Operating system profiles, the umask should be set to 0 for the userid who starts the Informatica services. 

 

Check if the umask is 0. This can be done by executing the command umask at the UNIX command prompt. 

 

If the value is not zero, then set the value to zero by executing the command at the command prompt: 

umask 0 

 

The profile file of the user starting Informatica services can also be modified by adding the above entry. If the profile file is modified, then log back in as the user so that the profile is executed and the umask is set in the environment. 

Once the umask is set to 0, restart the node. 

 

When a workflow is executed using OS profiles, the DI service will initiate the pmimpprocess to do a context switch to the OS profile user to execute certain tasks (session, event wait, command task). Any output file generated by these tasks (command and session) is owned by the OS profile user. 

 

During an event wait on a file, the DI service communicates with the pmdtm using OS pipes (In UNIX, pipes are also treated as files). This pipe has to be open so that both users (the OS user DI service runs as, and the OS profile user that pmdtm runs as) can read from and write to it. The only way to do this is to set the umask to 0. 

 

While trying to fetch the session log from the workflow monitor, the PCSF invokes the pmimpprocess to get the session log. The PCSF is running as the user that started the Informatica service and the session log is created and therefore owned by the OS profile user. So, the session log has to be created with read-write permissions so that the PCSF can access the session log. Hence the need to set umask to 0. 

 

However, if the umask is set to 0, then the target files created by the session have read-write permissions enabled for all (user, group and other). If this is a concern, then a post-session task should be executed to reset the permissions appropriately.

 

-------------------------------------------------------------------------------------------------------------------------------------

QUESTIONS:

We upgraded to informatica 9,5 and are getting the following error while running the workflow

PETL_24049

Failed to get the intialization  properties from the master service process for the prepare phase.

Error

Helper process for pmimpprocess failed to initialize - error code - [-12696-]

 Please suggest resolution for the same.

ANSWER:

OK I was able to resolve the issue and I wanted to post the resolution so that anyone in future can try the same.

 

The main reason for the issue was the permission and ownership of pmimpprocess under server/bin/,  the user that we used to install was not a root user, so we had to change the owner to root and setuid correctly as shown below

 

-rwsr-sr-x   1 root       root        pmimpprocess

 

The above uid can be set using the following sequence of chmod command

 

chmod 755 pmimpprocess

 

chmod u+s pmimpprocess

 

chmod u+g pmimpprocess

 

Once this was done the workflow executed sucessfully

 

Thanks

-------------------------------------------------------------------------------------------------------------------------------------

YOUTUBE : https://www.youtube.com/watch?v=pOjmf-hKVQM

你可能感兴趣的:(Operating,System,Profiles,informatica,umask,pmimpprocess)