Why executing a command suspends execution of all other workflows?
I created a workflow, which contains multiple workflows that are supposedly to run in parallel (no lines connecting them). Each sub workflow will eventually call some long running commands via exec(). In the run, I noticed that all sub workflows are started in parallel (good), but once one of the workflows calls a command via exec(), the execution of all other sub workflows are suspended until the command finishes. I thought that only the workflow that invokes exec() should be blocked and waiting for exec() to return, while all other workflows should continue processing. But in reality, this is not true. All long running commands are eventually executed one by one even though they belong to different workflows that are set to run in parallel. Why is that? Any way to get around this? I really don't want to use exec() flag 256, which makes the run asynchronous.