diff --git a/patroni/ha.py b/patroni/ha.py index 8f5d772d..98ba4398 100644 --- a/patroni/ha.py +++ b/patroni/ha.py @@ -287,10 +287,10 @@ class Ha(object): try: delta = (failover.scheduled_at - now).total_seconds() - if delta > 10: + if delta > self.patroni.nap_time: logging.info('Awaiting failover at %s (in %.0f seconds)', failover.scheduled_at.isoformat(), delta) return - elif delta < -15: + elif delta < - int(self.patroni.nap_time * 1.5): logger.warning('Found a stale failover value, cleaning up: %s', failover.scheduled_at) self.dcs.manual_failover('', '', self.cluster.failover.index) return diff --git a/tests/test_ha.py b/tests/test_ha.py index a65a444a..98b1ad1c 100644 --- a/tests/test_ha.py +++ b/tests/test_ha.py @@ -54,6 +54,7 @@ class MockPatroni(object): self.api = Mock() self.tags = {} self.nofailover = None + self.nap_time = 10 self.replicatefrom = None self.api.connection_string = 'http://127.0.0.1:8008'