Page MenuHomePhabricator

Revisit thumbor's poolcounter integration
Open, LowPublic

Description

There is a lot of issues with the poolcounter code in thumbor:

  • It only supports a single server, meaning that when we want to reboot a poolcounter server, we might need to deploy thumbor first
  • There are various logical bugs, starting from the fact that release starts a new connection if none is found
  • There is no proper way to ensure a lock is released on failure
  • We're always one code bug away from leaving a leaking acquired lock behind

Given the code now uses async/await instead of tornado-specific primitives, I think we might want to add async/await capabilties to python-poolcounter and use that library here instead of this bespoke code.