Homec4science

Fix an issue where daemons can stick in a pool

Authored by epriestley <git@epriestley.com> on Feb 28 2017, 17:05.

Description

Fix an issue where daemons can stick in a pool

Summary:
Ref T12331. Root problem is the unset($daemon) just unsets a key in a local variable, rather than actually discarding the daemon.

Add some logging to make this more clear and clean up some %d vs %s stuff.

Test Plan:

  • Ran a pool with bin/phd debug task --pool N, let it scale up, let it scale down, used bin/worker flood to add more tasks.
  • Before patch, the ghost daemons took up the slots in the pool.
  • After patch, the ghost daemons got removed properly and were replaced with fresh daemons.

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T12331

Differential Revision: https://secure.phabricator.com/D17433

Details

Committed
epriestley <git@epriestley.com>Feb 28 2017, 17:15
Pushed
aubortMar 17 2017, 12:03
Parents
rPHU7463809e4bb8: Add more autoscale pool logging to daemons in verbose mode
Branches
Unknown
Tags
Unknown

Event Timeline

epriestley <git@epriestley.com> committed rPHUc58d4fed2658: Fix an issue where daemons can stick in a pool (authored by epriestley <git@epriestley.com>).Feb 28 2017, 17:15