Page 1 of 1

UtilityWarningToLog Message

Posted: Thu Oct 21, 2004 6:03 am
by jjrbikes
Can someone please shed some light on how we remedy this warning message?

<<jobname>>..JobControl (UtilityWarningToLog): USER INFO: Error in sub-routine JOB=> <<jobname>> STAGE=> JobControl LINK=> -8

What exactly does the -8 mean??

we are getting this message during the run of a sequenced series of jobs. Initially I thought perhaps it was being generated because the triggers from one of the jobs were set at "Unconditional" and "Otherwise". But it appears our developer has changed that to "OK" and "Otherwise" and is still receiving this message.

Thanks!!

Posted: Thu Oct 21, 2004 7:44 am
by chulett
UtilityWarningToLog is a function that you can call to write a Warning message to the log. DataStage does not call this function, someone has coded this into the job or (based on the message) a 'sub-routine' that one of the jobs or the Sequencer itself is calling.

The USER INFO part of the message - "Error in sub-routine" - is what was coded to be passed to the routine as its argument.

Much like the truth - it's out there! :wink: Now you just need to find it.

Posted: Thu Oct 21, 2004 8:46 am
by jjrbikes
Thanks Craig!

That all makes good sense to me!! So can you tell me, does the
STAGE=> JobControl LINK=> -8

at the end of that message at least give me a clue of where to start looking? What does that -8 mean??

Thanks Again!

Jennifer

Posted: Thu Oct 21, 2004 8:47 am
by jjrbikes
Thanks Craig!

That all makes good sense to me!! So can you tell me, does the
STAGE=> JobControl LINK=> -8

at the end of that message at least give me a clue of where to start looking? What does that -8 mean??

Thanks Again!

Jennifer

Posted: Thu Oct 21, 2004 9:12 am
by chulett
No, I think all the -8 means is that it is a warning. :?

I'd start with whatever JOB NAME is logging the message and dig down from there.

Posted: Thu Oct 21, 2004 9:39 am
by jjrbikes
Yep! That seems like the most logical place to start.
Thanks again!!!

Posted: Thu Oct 21, 2004 4:09 pm
by ray.wurlod
-8 is an error code, meaning "not in stage".

It most probably indicates that you've called DSLinkInfo (more properly that DSLinkInfo has been called) with a StageName argument that isn't a stage name, or was DSJ.ME but the call was made other than within a stage. Check spelling and casing.

These negative error codes can be found in the dsinclude directory, in the JOBCONTROL.H file, as tokens beginning with "DSJE.". You can also find them in the on-line help for the various functions (such as DSGetLinkInfo) and in the DataStage BASIC manual.

Possible explanations for JobControl LINK=> -8 error

Posted: Mon Dec 21, 2009 4:34 pm
by quiztime
The possible explanations for an error fitting the pattern below appear to be:
<<jobname>>..JobControl (UtilityWarningToLog): USER INFO: Error in sub-routine JOB=> <<jobname>> STAGE=> JobControl LINK=> -8
1. Passing an empty or invalid parameter to a job from the .$UserStatus of the previous job e.g. the job that gets dates from the database runs a query that returns null and then attempts to pass this null parameter to the subsequent job in the sequence. What makes this kind of scenario tricky is that it can come up even though nothing has changed in DataStage e.g. if someone clears of the database table that is used by the DataStage job to get the data to pouplate the relevant parameter that it then passess on to the next job.
2. It appears that this error can also occur if the same sequence is called from two higher level sequences at the same time i.e. if you have a "reusable" sequence. As DataStage does not have a concept of multi instance sequences you should not really be reusing sequences that could potentially be called to run at the same time.