As of December 1, 2020, Focal Point is retired and repurposed as a reference repository. We value the wealth of knowledge that's been shared here over the years. You'll continue to have access to this treasure trove of knowledge, for search purposes only. Moving forward, myibi is our community platform to learn, share, and collaborate. We have the same Focal Point forum categories in myibi, so you can continue to have all new conversations there. If you need access to myibi, contact us at firstname.lastname@example.org and provide your corporate email address, company, and name.
Please, don't take my answer as an "Absolute Truth", but I've been through similar issues in the past, and this is what I infered:
We used to have a DataMigrator flow, named A, inside of which, we called two fex processes (hand written, not created by means of datamigrator) AA and AB. Well, when AB was running it used to exit with failure due to an oracle timeout.
We infered that, if a flow calls N fex files, then a socket to the database is created in the first file, and used all over to the end of the flow. So, we tried to encapsulate AB inside a wrapper flow, whose only work was to call AB, and it worked like a charm. (it is: a flow A who calls a fex AA, and then calls a flow ABW, inside of which we have the fex AB)
You could give it a try.
WebFOCUS 8, Win/*NIX, B.I.Portal, *SQL, all outputs