There is a very strange bug happening when trying to send information from a child transformation to a parent transformation.
Background:
I want to loop through a list of values. The parent transformation sends the loop to a child transformation (sub-transformation). For each iteration in the loop, the child transformation will do some manipulation and send back a count of all rows it processed. Finally, the parent transformation receives the counts from each iteration and calculates the sum total number of rows written (for all iterations in the loop).
Problem:
The order of the creation of hops makes a difference if the parent transformation crashes or not! The child transformation has 4 steps.
Correct order when creating hops:
1) Create hop between step 1 and step 2
2) Create hop between step 2 and step 3
3) Create hop between step 3 and step 4
If you change this order, parent transformation crashes! For example:
1) Create hop between step 3 and step 4
2) Create hop between step 2 and step 3
3) Create hop between step 1 and step 2
Why does the order the hops were created cause the parent transformation to crash? When working in spoon, you can't even see what order the hops were created. You would have to deep dive into the xml to see it. Furthermore, it seems like data 'leaks' from intermediate steps in the child transformation to the parent transformation if the order of the hops are incorrect.