Originally posted by: Kepa_Screen
Hi:
We are having some trouble with the RUN command.
We have the source for our unique map at one system, listening to an OracleAQ. ( queue ).
This unique map ( called Director Map ), takes ONE record from the Input OracleAQ. Then determines what interface is asked for execution...And calls another map, a concrete map for the concrete input, using a RUN command.
The map puts this output into another OracleAQ, output one.
And then, the cycle begins again, one input record, director determines what "child" map to execute for that record, and calls this map with a RUN command, passing the input to it. The child map, puts it's output to another Queue.
We do this in this manner, because we need to ensure that secuentiality is respected.
But we are having some cases in which, the input record arrives, the director map calls the child map, but at the output queue, the secuentiality is not respected. If a second record arrives, and the child map executed for that map, has a lower actions to do, the second map finishes before than the first execution of the child map that was executed first.
So we think that the problem is that RUN command is not synchronized...It executes the child map, but does not wait until the child map finishes...The director map executes the run command, and loose "the hand", so we cannot ensure the secuentiality of the queue.
Could anybody confirm if this theory is correct, and, in that case, how to say to the run command to wait for the finish of the child executed map, before getting a new record at the input ? ( director map has source rule set to BURST with fetch unit = 1 )
Thanks in advance.
#IBM-Websphere-Transformation-Extender#IBMSterlingTransformationExtender#DataExchange