Page MenuHomePhabricator

Clean up a few more daemon behaviors
ClosedPublic

Authored by epriestley on Mar 24 2017, 8:44 PM.
Tags
None
Referenced Files
F18438435: D17560.id42230.diff
Sun, Aug 31, 1:21 PM
F18424575: D17560.id42230.diff
Sat, Aug 30, 9:07 PM
F18423352: D17560.diff
Sat, Aug 30, 7:37 PM
F17947839: D17560.id.diff
Jul 31 2025, 6:56 PM
F17923427: D17560.diff
Jul 30 2025, 8:12 AM
Unknown Object (File)
May 30 2025, 6:38 PM
Unknown Object (File)
May 29 2025, 9:11 AM
Unknown Object (File)
May 29 2025, 7:08 AM
Subscribers
None

Details

Summary

Ref T12298.

  • If all daemons in all pools are hibernating already, we may exit immediately without sending EXIT events and fail to update the web UI.
  • A max() should be min() ("sleep for at most 180 seconds", not "sleep for at least 180 seconds").
  • If there are no daemons in a pool (unlikely/theoretical), we might not set the shutdown flag on the pool correctly.
  • An autoscale message may actually mean that a pool is exiting.
Test Plan
  • Ran bin/phd debug task, waited for daemon to hibernate, killed it, saw it vanish from daemon console.
  • Saw it hibernate for 60s, not 180s.
  • Uh, killed a pool real fast and nothing broke? This one is hard/impossible to test.
  • Read the newer autoscale message.

Diff Detail

Repository
rPHU libphutil
Lint
Lint Not Applicable
Unit
Tests Not Applicable