As part of an after job subroutine the link counts are examined using
Code: Select all
DSGetLinkInfo(JobHandle,ThisStage,ThisLink,DSJ.LINKROWCOUNT)
In v8.1 this is working, but in v11.5 some jobs report incorrect numbers on links.
As an example a link writing to a dataset might report 5000 records in the after job subroutine, but if I open the dataset in DataSet Management the number of records will be as expected, say 9500.
As a consequence the reconciliation fails and the subroutine aborts the job.
If I manually run the same code in the subroutine after the job has completed it is also giving the wrong link counts.
I have raised a case with IBM and their feedback so far is that JobMonApp can suffer a lag on heavily loaded systems. This system however is new and only being used by me (for now) and is not at all heavily utilised when these failures occur.
I'd appreciate any suggestions about what could be going wrong whilst I await further feedback and suggestions from IBM.
Also if anyone knows the mechanism by which the link counts are captured and stored please can you explain the process; that might point to somewhere else I can look to try and identify the underlying issue.
All I have been able to see is that JobMonApp.log is being written to with details of the counts very frequently. Does another process examine this file and store the results elsewhere when the job completes?
In an effort to workaround the problem during initial testing on v11.5 I added a sleep 10 to the subroutine and it hasn't happened since, but that's not a long term solution.