Date: 2019-10-02
Accepted (lazy consensus) & implemented
A Task could be run on any node of the cluster. To interrupt it we need to notify all nodes of the cancel request.
-
We will add an EventHandler to broadcast the
CancelRequestedevent to all the workers listening on a RabbitMQ broadcasting exchange. -
The
TaskManagershould register to the exchange and will applycancelon theTaskManagerWorkerif theTaskis waiting or in progress on it.
- The task manager's event system should be bound to the RabbitMQ exchange which publish the
TerminationEvents