exechost_periodic run before exechost_startup on Windows

Description

When any hook (or even separate two hook also) has exechost_startup and exechost_periodic hook then MoM runs exechost_periodic first before exechost_startup on mom restart on Windows.

08/25/2018 16:38:26;0001;pbs_mom;Svr;pbs_mom;No error (0) in main, Created desktop default in window station=PBSProWS
08/25/2018 16:38:26;0006;pbs_mom;Fil;pbs_mom;Version 18.1.0, started, initialization type = 0
08/25/2018 16:38:26;0002;pbs_mom;Svr;pbs_mom;Mom pid = 1464 ready, using ports Server:15001 MOM:15002 RM:15003
08/25/2018 16:38:26;0006;pbs_python;Hook;pbs_python;hook event type is exechost_periodic
08/25/2018 16:38:26;0002;pbs_mom;n/a;initialize;pcpus=2, OS reports 2 cpu(s)
08/25/2018 16:38:26;0006;pbs_python;Hook;pbs_python;hook event type is exechost_startup
08/25/2018 16:38:26;0086;pbs_mom;Fil;;found pid_handles[0]=924 to have exited
08/25/2018 16:38:26;0086;pbs_mom;Fil;;status=0
08/25/2018 16:38:26;0d80;pbs_mom;TPP;pbs_mom(Main Thread);net restore handler called

By looking into code I find that Mom runs periodic hook at https://github.com/PBSPro/pbspro/blob/master/src/resmom/mom_main.c#L9529 and then Mom on windows calls initialize() at https://github.com/PBSPro/pbspro/blob/master/src/resmom/mom_main.c#L9569 which runs startup hook at https://github.com/PBSPro/pbspro/blob/master/src/resmom/mom_main.c#L1197

However from code looks like this issue is only on Windows because initialize() on non-Windows platform gets called at https://github.com/PBSPro/pbspro/blob/master/src/resmom/mom_main.c#L9425 which is before mom run periodic hook.

Note to developer of this ticket: Please modify pbspro/.appveyor.yml once this get fixed
 

Acceptance Criteria

None

Status

Assignee

Unassigned

Reporter

Hiren Vadalia

Severity

4-Critical

OS

None

Start Date

None

Pull Request URL

None

Story Points

1

Components

Priority

High
Configure