Clarify the function of the periodic ticker.

- it either retries for consensus or retries operations we would have tried previously.
There is no point retrying pending operations if we are waiting for consensus.
This commit is contained in:
Bryan Boreham committed 2016-04-29 13:59:25 +01:00
1 parent 03afb54cdd
commit fd7fcc762e
1 file changed
+3 -1
+3 -1
View File
@@ -632,11 +632,13 @@ func (alloc *Allocator) actorLoop(actionChan <-chan func(), stopChan <-chan stru
case <-stopChan:
return
case <-alloc.ticker.C:
// Retry things in case messages got lost between here and recipients
if alloc.awaitingConsensus {
alloc.propose()
} else {
alloc.tryPendingOps()
}
alloc.removeDeadContainers()
alloc.tryPendingOps()
}
alloc.assertInvariants()