Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Qlik Open Lakehouse is Now Generally Available! Discover the key highlights and partner resources here.
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

BUG:tRunJob triggers OnComponentError only if [x] Die on child error

Version: 5.4.1

Build id: r111943
[url=https://www.talendforge.org/forum/img/members/318004/talendexample_20160518-0617.png][img=118x123]ht...]

The error in the ChildJob is not routed through the OnComponentError channel, no matter what sort of error i provoke in the subjob.

It is routed correctly when the Setting [Die on child error] is selected, then i can handle the error, but the Job ends and this is not what i want.

regards
dj

Labels (2)
5 Replies
Anonymous
Not applicable
Author

You could check the child return code returned by tRunJob in an if trigger. 
Check out the Outline view of the job. Here you can see what components have available as return values.
Anonymous
Not applicable
Author

Thank you for your reply,
i implemented a workaround already, i expected more a reaction of the talend team regarding fixing the bugs in the product.

cheers
dj
Anonymous
Not applicable
Author

There is no bug in the product. It works as designed. My suggestion was not a workaround, it the "official" way to deal with such situations.
Anonymous
Not applicable
Author

So in this case , for what are the Trigger OnComponentOk/Error if the "official way" is Trigger if ?
Anonymous
Not applicable
Author

OnComponentError will only be used if the component fails. It is a error handling. You can do a bit tricky design and let after OnComponentError follow your normal job flow but the actual design idea behind that is to simply do some cleanings and let the job stop at this point. To check the child-return-code is not a workaround, it is a clean approach to react after a child job has returned something different than null or zero as return code. We do sometimes such things e.g. the child job detects some missing data bit this is actually not a fault, it could be a matter of timing. In such cases we send a exit code different from zero. An in the parent job we receive this information and let follow a appropriated workflow.