Page 1 of 1

job not aborting even if there is a fatal error

Posted: Wed Jan 16, 2008 12:43 am
by dnat
Hi

I have a job which upserts the data into the table through odbc stage. Due to some issue with the link, there are some fatal error thrown in the log and all the records didnt get inserted properly. Ideally the job should have been aborted, but it shows the status as Finished. Is there any method to abort the job , if it has any fatal conditions?

Posted: Wed Jan 16, 2008 3:41 am
by ash_singh84
Well, It all depends on the ODBC Driver that your Database vendor has provided for datastage. What database are you using? Please contact your Support provider for driver update! :idea:

Posted: Wed Jan 16, 2008 4:00 am
by stefanfrost1
I have seen this can happen for example when using datastage and certain patched versions of DB2 on AIX. It occurs whenever you are using upsert in and there are no hits on the update-statement or when sending "empty" deletes to the database. The database(db2) throws a SQLW (Warning) to datastage and datastage logs this as a fatal error (using db2 enterprise stage) however not failing the job or (using the db2 api stage) as warnings (filling up the log).

There are patches for this or enviroment varibles to be used (talk to you local IBM support) or you can actually figure out why you're getting these warnings. Try to eliminate "empty" deletes and handle those records that cant be used for update.

Posted: Wed Jan 16, 2008 4:57 am
by ray.wurlod
"Fatal" errors do not necessarily cause parallel jobs to abort.

In this wise parallel jobs behave differently from server jobs.

Posted: Wed Feb 27, 2008 3:37 pm
by sun786
I got a similar situation where job dont fail after fatal error thrown by the odbc stage...status shows Finished...
what is the solution to this......contact IBM? or any work around ....

Posted: Wed Feb 27, 2008 5:08 pm
by ray.wurlod
Stop thinking like a server job developer.

Parallel jobs CAN finish even though one of the components has logged a fatal error. That is because the Conductor process, which almost never has a fatal error itself, finishes normally.