Yes, Deepak the parent and child process are derived from same Base class. i defined a function name main in base class with empty implememationa and same got implemented for both parent and child in their own module. Below is a skeleton of code. the parent process is spawned while bootstrapping the httpd and then child process is spawned from parent. I am using fork to spawn the process
package Test::Base; #common functionalities will define here #abstract main method. should implement in derived modules sub main {} } 1; -------------------------------------------- package Test::Parent; use base qw(Test::Base); #specific functionality for Parent #task of main to spawn and monitor the child process sub main { #spawn child process if its not spawned already #check the spawned child process status. start the child process which are not alive } 1; ----------------------------------------------------------------------------- package Test::Child; use base qw(Test::Base); #specific functionality of child process sub main { #check and execute the tasks of child continuously #use ally its never ending loop to check and execute the tsak #even if its come out , i will exit the child process using CORE::exit() } 1; On Fri, Sep 29, 2023 at 6:24 PM Deepak Goel <deic...@gmail.com> wrote: > Obviously there is a common function which is being called by your server, > client threads. > > You will have to share your code for us to find out what's going on. > > On Fri, 29 Sept 2023, 17:08 Sreenivasulu Alapaka, < > sreenivasulu.alapaka...@gmail.com> wrote: > >> Hi Deepak, >> >> >> *Client Monitor Workers is application specific log. This message will >> be logged by the parent process in my application but not the child >> process. In the issue state, I am seeing the * >> *Client Monitor Workers in both parent and child logs as the child is >> executing the tasks of the parent instead of its own. How can we >> debug this?* >> >> On Fri, Sep 29, 2023 at 4:44 PM Deepak Goel <deic...@gmail.com> wrote: >> >>> >>> >>> On Fri, Sep 29, 2023 at 4:35 PM Sreenivasulu Alapaka < >>> sreenivasulu.alapaka...@gmail.com> wrote: >>> >>>> Hi Deepak, >>>> >>>> Please find the logs below. >>>> Parent task is to monitor the workers(childs) and then >>>> remove/start additional workers based on the load. >>>> its performing its task. >>>> Parent process logs >>>> ================= >>>> Wed Sep 27 20:36:36 2023: Started (PID: 3032) >>>> Fri Sep 29 16:12:07 2023: Removing some Client Monitor Workers >>>> >>> >>> I am not sure what is *Client Monitor Workers. *It might not be the >>> same as *Client Workers.* >>> >>> >>>> Fri Sep 29 16:12:18 2023: restarting Client Monitor Worker... >>>> Fri Sep 29 16:12:33 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:12:54 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:13:06 2023: restarting Client Monitor Worker... >>>> Fri Sep 29 16:13:22 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:13:36 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:13:54 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:14:09 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:14:23 2023: restarting Client Monitor Worker... >>>> Fri Sep 29 16:14:39 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:14:54 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:15:08 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:15:27 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:15:42 2023: Starting additional Client Monitor Workers >>>> >>>> After spawning the child process , it works for some time properly and >>>> then starts performing tasks of the parent. >>>> Child process logs >>>> ================== >>>> Wed Sep 27 20:36:43 2023: Started (PID: 5321) >>>> Wed Sep 27 20:41:16 2023: Synchronizing containment >>>> Wed Sep 27 20:41:16 2023: Synchronizing containment >>>> Wed Sep 27 20:41:17 2023: Sync complete; beginning audit >>>> Wed Sep 27 20:41:19 2023: Audit finished. >>>> Wed Sep 27 21:16:23 2023: Audit finished. >>>> Wed Sep 27 21:16:23 2023: nothing to do >>>> Wed Sep 27 21:43:39 2023: Removing some Client Monitor Workers >>>> Wed Sep 27 21:43:54 2023: Removing some Client Monitor Workers >>>> Wed Sep 27 21:44:09 2023: Removing some Client Monitor Workers >>>> Wed Sep 27 21:44:24 2023: Removing some Client Monitor Workers >>>> Wed Sep 27 21:44:39 2023: Removing some Client Monitor Workers >>>> Wed Sep 27 21:44:54 2023: Removing some Client Monitor Workers >>>> Wed Sep 27 21:45:09 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:13:29 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:13:44 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:13:58 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:14:17 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:14:32 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:14:51 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:15:06 2023: restarting Client Monitor Worker... >>>> Fri Sep 29 16:15:22 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:15:36 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:16:00 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:16:10 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:16:30 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:16:45 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:17:06 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:17:20 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:17:40 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:17:55 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:18:09 2023: Starting additional Client Monitor Workers >>>> Fri Sep 29 16:18:28 2023: Removing some Client Monitor Workers >>>> Fri Sep 29 16:18:43 2023: Starting additional Client Monitor Workers >>>> >>>> Child process worked perfectly till Wed Sep 27 21:16:23 2023: and after >>>> that I didn't see any logs. Suddenly it started dumping the parent process >>>> logs from Wed Sep 27 21:43:39 2023. It's not recovering , it's required to >>>> kill the child process then Parent process will spawn another child process >>>> to do the task and the newly spawned child will work for some time and >>>> again enter into the issue state. >>>> >>>> On Fri, Sep 29, 2023 at 4:17 PM Deepak Goel <deic...@gmail.com> wrote: >>>> >>>>> >>>>> >>>>> On Fri, Sep 29, 2023 at 4:15 PM Sreenivasulu Alapaka < >>>>> sreenivasulu.alapaka...@gmail.com> wrote: >>>>> >>>>>> Hi Deepak, >>>>>> >>>>>> I have specific logs for parent and child process and am >>>>>> able to see the logs of parent process dumped in child process log with >>>>>> child process id. >>>>>> >>>>>> >>>>> Please share the log files.. >>>>> >>>>> >>>>>> On Fri, Sep 29, 2023 at 3:58 PM Deepak Goel <deic...@gmail.com> >>>>>> wrote: >>>>>> >>>>>>> >>>>>>> >>>>>>> On Fri, Sep 29, 2023 at 3:52 PM Sreenivasulu Alapaka < >>>>>>> sreenivasulu.alapaka...@gmail.com> wrote: >>>>>>> >>>>>>>> Hi Team, >>>>>>>> >>>>>>>> I am using httpd and mod_perl libraries to spawn the >>>>>>>> process to execute the tasks. httpd will spawn a process which is >>>>>>>> parent >>>>>>>> and it will spawn the other child process to perform the tasks. >>>>>>>> The parent process job is to monitor the child process >>>>>>>> and the child process has to perform the functionality taks. All of >>>>>>>> sudden >>>>>>>> one of the child process is executing the tasks of the parent instead >>>>>>>> of >>>>>>>> the child process tasks. >>>>>>>> >>>>>>>> How did you infer that the child process is executing the parent >>>>>>> task? >>>>>>> >>>>>>> >>>>>>>> I am using RHEL8 environment and these below are >>>>>>>> library versions. >>>>>>>> Same piece of code worked in Cent 7. >>>>>>>> >>>>>>>> httpd: 2.4.6 >>>>>>>> mod_perl: 2.0.10 >>>>>>>> >>>>>>>> Could you please help here, how to debug the issue? >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Thanks & Regards >>>>>>>> *Sreenivasulu Alapaka* >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> Deepak >>>>>>> "The greatness of a nation can be judged by the way its animals are >>>>>>> treated - Mahatma Gandhi" >>>>>>> >>>>>>> +91 73500 12833 >>>>>>> deic...@gmail.com >>>>>>> >>>>>>> Facebook: https://www.facebook.com/deicool >>>>>>> LinkedIn: www.linkedin.com/in/deicool >>>>>>> >>>>>>> "Plant a Tree, Go Green" >>>>>>> >>>>>>> Make In India : http://www.makeinindia.com/home >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Thanks & Regards >>>>>> *Sreenivasulu Alapaka* >>>>>> >>>>> >>>> >>>> -- >>>> Thanks & Regards >>>> *Sreenivasulu Alapaka* >>>> >>> >> >> -- >> Thanks & Regards >> *Sreenivasulu Alapaka* >> > -- Thanks & Regards *Sreenivasulu Alapaka*