There's a really nasty race-condition between the url hook's usage of the helpers/workers.py pool, and the reload code.
As part of reloading, the reload code shuts down the pool.
If messages are being sent to irc at the same time, hooks/url.py tries to kick off a worker using the worker pool, and fails because it runs between the time the old pool is shutdown and the new pool is spun up.
There's a really nasty race-condition between the url hook's usage of the helpers/workers.py pool, and the reload code. As part of reloading, the reload code shuts down the pool. If messages are being sent to irc at the same time, hooks/url.py tries to kick off a worker using the worker pool, and fails because it runs between the time the old pool is shutdown and the new pool is spun up.