meetings / gearsloth

Gearman job persistence and delayed execution system
MIT License
2 stars 0 forks source link

Gearman workers do not send CAN_DO after reconnecting #31

Closed lakka closed 10 years ago

lakka commented 10 years ago

When a worker disconnects from a gearman job server, and then reconnects to it, it does not send CAN_DO. This means that if the gearman job server is killed and then booted again, it will not be aware of the workers attached to it and is therefore unable to convey jobs to them.

There are a few ways of solving this problem:

  1. Add the above functionality to gearman-coffee
  2. Write the functionality to MultiserverWorker, so that each time a reconnect is successful, a CAN_DO is sent.
jarnoharno commented 10 years ago

What if the worker is registered to gearman server twice with CAN_DO? Maybe we need to send RESET_ABILITIES followed by CAN_DO on each reconnect event?

amv commented 10 years ago

The pull request was accepted to upstream and a new version was released. When can we close this issue?

lakka commented 10 years ago

Sorry about the delay, I was drinking beer in Sysmä.