Vaibhav Parab (Customer) asked a question.

OS-COMMAND to execute _progres on PASOE leaves 'defunct' unix sub-processes resulting in SYSTEM ERROR: MAXSUBP: too many subprocesses. (357)

We have a PASOE apsv WEBAPP which executes OS-COMMAND to initiate another _progres session in batch mode. The OS-COMMAND is run with NO-WAIT. The PASOE sessions are connected in SESSION-MANAGED mode. Below is how the OS-COMMAND looks like which run on the PASOE. vDLCPath holds the absolute path to _progres.

  1. OS-COMMAND NO-WAIT VALUE (vDLCPath + " " + "-baseADE " + PROPATH + " " + vDataBaseConnection + " -p runner.p -b -param " + vCommandLine).

When investigating all sub-processes associated with the PASOE, it shows a number of 'defunct' entries. These seem to exhaust the quota of sub-processes and any future attempt to run the above command by a later session/connection fails with the below error.

 

SYSTEM ERROR: MAXSUBP: too many subprocesses. (357)

 

How to ensure that the sub-processes are completed and removed?

 

 


    • Vaibhav Parab (Customer)

      @Mike Fechner (Consultingwerk)​ , I have previously gone through the same link that you shared and what interests me is the idea of re-organizing the number of Agents-vs-Sessions. Unix's max sub-process threshold seems to be applicable at multiple levels (I am NOT a UNIX expert!) - Kernal, User, Parent Process. I am thinking of trying out the suggestion of reducing the Sessions per Agent and increasing the Agents. If the threshold I am hitting is at the Parent Process level, this workaround should provide a relief.

      • Mike Fechner (Consultingwerk)

        @James Palmer (Vertu Motors PLC)​ can you please elaborate on why QUIT. should make any difference here? We're still discussing _progres -b launched througth OS-COMMAND here. QUIT _should_ not make any difference.

      • Vaibhav Parab (Customer)

        @James Palmer (Vertu Motors PLC)​  - a PASOE restart cleared up the defunct processes. Does PASOE have a counterpart to 'trim' in Classic AppServers? If so, I can give it a try.

         

        Nonetheless, this is just a work around.

         

        The runner.p does not end with a QUIT. But I have doubts same as @Mike Fechner (Consultingwerk)​ . I will try it though.

      • James Palmer (Vertu Motors PLC)

        Apologies regarding the QUIT - I misread something.

      • Vaibhav Parab (Customer)

        @Peter Judge (Consultingwerk)​ Tried "refresh agents", but that does not flush the defunct processes. But stopping MS-Agent did. Not sure how this works.

      • Peter Judge (Consultingwerk)

        At this point, Progress Tech Support will be your best bet.

  • Vaibhav Parab (Customer)

    I will have to consider async AS request if I do not find a solution to the defunct processes problem. I haven't noticed any performance issues with the OS-COMMAND calls on PASOE until this recent discovery.

10 of 14