We are schedulling a flows by dint of SAS 9.4 and IBM Platform Process Manager 9.1. Some time we had a subflow, that had not a finish condition. According to this reason there are several starts in LSF Flow Manager with status of flow="DONE", but having subflow with status "RUNNING" inside. Iternal process of subflow has status "WAITING", because they waiting for time event, that occur one day in month. Killing of the subflow or the subflow's internal processes are not available. Screenshot with flow in attachment, subflow name - nested_calendars. I need to change status of subflow on "DONE" (or any other than "RUNNING"), because subflows from old launch should not start at the next occurrence of an event. Please help with a change of status of the subflow.
I think the flows are working correctly, as expected. The problem is on the design of the flows, meaning:
- If you have a flow and one node will wait for a time event, that happens once per months.... your flow won,t ever finish, but once per month.
That node (and nodes after it), should be scheduled apart in another flow or sub-flow. What you can do, if it requires an extra dependency besides the time, is to add in that new event, like a file event before it. Then the job will start only when the time event AND/OR the file event will happen.
With this procedure, you can ensure all flows will finish, and if any must wait to be started for more than one condition to happen, that is OK.
Once this is said, you cannot change the flow from Running or Wait to Done. But to Stopped, or Error exit codes. or Pause. But never "Done" (that is also bad "cheating" anyway 😉 )