This is not a big problem to me but it is something I wonder especially for recursived invoke step.
I have the following flow service fs1
MAP (Set Value = b to value)
INVOKE myFolder:fs2 (Output = value to variable output)
My Flow service fs2 :
MAP (Set value = a to value)
If I run fs1 I see two variables in pipeline
value (= a)
output (= a)
The variable value in output from fs2 override the value variable in fs1.
Is it existe something to prevent that ?
Hi,
Recursivity in the IS is not a transparent operation (neither is caching).
Because the pipeline has always a global scope recursive functions require special handling:
- don’t use the external variables (your inputs and outputs, and those of any invocation) internally
- map your inputs as soon as possible, and drop them
- map the results of any invoke to your local variables as soon as possible, and drop them and the named inputs of those calls too
- map your internal variables to your outputs as late as possible, and drop them
- scope your recursive call so that you don’t pollute your working variables
Did this help?
Best regards