Execute only if all the previous components are executed successfully
Hello, I want to execute a component3 only if two previous components (component1, component2) are executed. In the beginning I've thought to use a link "On Component Ok", but if the component1 is executed the following component3 will be executed even if component2 is failed. What can be a solution ?
Hi, I think can use onsubjobOk trigger. such as component1-->onsubjobok-->component2-->onsubjobok-->component3 The main difference between OnSubjobOK and OnComponentOK lies in the execution order of the linked subjob. With OnSubjobOK, the linked subjob starts only when the previous subjob completely finishes. With OnComponentOK, the linked subjob starts when the previous component finishes.
Yes, It' so! I've forgotten to say that I want to execute componnt1 & component2 in parallel because they are independent of each other. I'm using free version of Talend and I've read that that there are more possibility of parallelism in commercial version.
Hi,
I think you mentioned the component
tParallelize, however, it is only available in talend enterprise subscription version.
Could you give more information about your requirement so that we may have a good solution on talend open studio.
Actually, talend open studio has "Parallelize" functionality.
Such as 'enable parallel execution' and 'Multi thread execution'.
Best regards
Sabrina
Yes, yes, this is why I want to use parallelism.
I have 3 tables: t1, t2, t3.
In t3 I have foreign keys from t1, t2.
t1 and t2 are independent of each other.
I want to fill out these three tables in one job. So, t1 and t2 can be filed in parallel. But t3 should be filled out only after t1 and t2.
In my case parallelism is not indispensable, however, it would interesting if I can use it.
you can do this in the free version by wrapping your jobs in other jobs: Master Job will contain two jobs connected by onSubJobOK 1) parallel wrapper job for your two tables in parallel 2) job you want to run after your two tables. the parallel wrapper job will contain the two table jobs you want to run in parallel. If you do not connect them with any connectors and make sure "enable parallel execution" is checked in the job tab for the wrapper they should run in parallel.