You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When the daemon launches the child (GoalState processing) agent, it loops for 15 minutes, checking the status of the child process once a minute, to ensure the child successfully launched and processed.
The child process, before processing GoalState, first looks for updates. It immediately exits is an update is discovered. This process is generally quick, less then a few seconds.
Unfortunately, the Popen Python object (in 2.7, at least, which we must support) used to launch the child does not support waiting against the process with a timeout. The daemon emulates waiting with a timeout by checking status and then sleeping. This means the daemon will not discover and launch the downloaded update for roughly a minute.
We should reduce the sleep to something much smaller, say 3-5 seconds, or perhaps even 1 second since this occurs early in VM launch and CPU consumption is not the main issue.
The text was updated successfully, but these errors were encountered:
@hglkrijger Let's poll at 1 second intervals for the first two minutes and then back off after that...or just poll at 1 second. My only concern is a high polling rate while the child is doing real work.
Alternatively, we could poll at a high frequency only if there are no downloaded agents (that is, an update is likely and this is likely a new VM). That would work quite well.
When the daemon launches the child (GoalState processing) agent, it loops for 15 minutes, checking the status of the child process once a minute, to ensure the child successfully launched and processed.
The child process, before processing GoalState, first looks for updates. It immediately exits is an update is discovered. This process is generally quick, less then a few seconds.
Unfortunately, the Popen Python object (in 2.7, at least, which we must support) used to launch the child does not support waiting against the process with a timeout. The daemon emulates waiting with a timeout by checking status and then sleeping. This means the daemon will not discover and launch the downloaded update for roughly a minute.
We should reduce the sleep to something much smaller, say 3-5 seconds, or perhaps even 1 second since this occurs early in VM launch and CPU consumption is not the main issue.
The text was updated successfully, but these errors were encountered: