From 8c7e1892eeadfeb034d3685ad7c69b3a68d039ae Mon Sep 17 00:00:00 2001 From: Alexander Kukushkin Date: Wed, 21 Nov 2018 12:51:52 +0100 Subject: [PATCH] touch_member method should not raise exceptions (#859) Fixes https://github.com/zalando/patroni/issues/853 --- patroni/dcs/consul.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/patroni/dcs/consul.py b/patroni/dcs/consul.py index 3bb05d1d..be370c41 100644 --- a/patroni/dcs/consul.py +++ b/patroni/dcs/consul.py @@ -338,17 +338,15 @@ class Consul(AbstractDCS): logger.exception('get_cluster') raise ConsulError('Consul is not responding properly') + @catch_consul_errors def touch_member(self, data, ttl=None, permanent=False): cluster = self.cluster member = cluster and cluster.get_member(self._name, fallback_to_leader=False) create_member = not permanent and self.refresh_session() if member and (create_member or member.session != self._session): - try: - self._client.kv.delete(self.member_path) - create_member = True - except Exception: - return False + self._client.kv.delete(self.member_path) + create_member = True if not create_member and member and deep_compare(data, member.data): return True