-
Couldn't load subscription status.
- Fork 140
Description
We had several occasions where the mesos slave with running broker got restarted, the framework tries to reconcile the broker task, then the framework got restarted while the broker state is "reconciling" (saved in zk), after that the framework will be stuck due to the reconciling broker state which wasn't reconciling at all. It will not start any brokers even though the broker is no longer running, the only way I found to fix this is to manually go into zk /kafka-mesos node and delete all the "task" broker attributes that contains "reconciling" state from the brokers json.
The code causing this problem:
https://github.com/mesos/kafka/blob/master/src/scala/main/ly/stealth/mesos/kafka/scheduler/mesos/TaskReconciler.scala#L124
Maybe it should resume the reconciliation or remove the check all together, rather than do nothing if the state is reconciling.