In our project we have a job group which will move a set of file from one directory to another directory. The first job in that group will be run only when a file with an extension "ind" is present in the source directory, i.e the dependency is set to a file with extension *.ind(Please see attached screeshot for reference).
But when we run the job the dependency is not being satisfied even though the file is present in the source directory.
What could be the reason for this?
Note: If I overide the job, then the files are properly griing moved. But since this is automated, the job run must be based on the dependency we have set.
This sounds like the runtime user of the job is a different account than used by the agent.
File Dependencies and File Events are evaluated by the agent process. This means the account running the agent service must have access to the file.
When the job runs it uses the runtime user. If the runtime user is different account than the agent account you can encounter the problem you describe.
If this is a Windows agent running as a Local System account, the agent will only have access to files local to the server. So if the file is on another server the agent will not have access to it.
If this isn't your issue, could you provide details about the agent (windows/unix), file location (local to agent/UNC path), and whether the agent running the job is the same as the agent being used to evaluate the file dependency.
This does not happen always. Some times they run properly.
I have given the agent details below,
Agent Type: Windows
File Location: UNC(Because the file movement is based on Perl program. So when the program is run we will have the message giving the path as "UNC path")
I am not sure how to get the account running the agent. I have attached a screen shot whoch gives the agent name and runtime user name(from the override tab) in the job activity window.
In order to determine the account running the agent
- Log on to the agent server
- Open Administrative Tools, Services
- Open service "TIDAL_AGENT_1" (the default name)
- The "Log On" tab will tell you the account
If the agent service is running as a "Local System Account" the agent will only have access to files on the server
If a specific account is specified, that account will need access to the file location.
Also check the File Dependency in the Job Definition to verify the same agent is being used to check the file dependency as is running the job because they can be different. If they are different, then you will need to follow the above steps to determine the account used by the File Dependency agent.