From 0800290c8e2590cffc63127818a2f210e9b74106 Mon Sep 17 00:00:00 2001 From: Jarrod Johnson Date: Thu, 21 May 2020 08:47:07 -0400 Subject: [PATCH] Fix checking colleective status In a few contexts, the result of list_collective was used directly in a boolean context. As an iterator, it is always true unless coerced into a potentially empty list explicitly. --- confluent_server/confluent/consoleserver.py | 2 +- confluent_server/confluent/discovery/core.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/confluent_server/confluent/consoleserver.py b/confluent_server/confluent/consoleserver.py index dbc12e43..ce397d1a 100644 --- a/confluent_server/confluent/consoleserver.py +++ b/confluent_server/confluent/consoleserver.py @@ -243,7 +243,7 @@ class ConsoleHandler(object): def check_collective(self, attrvalue): myc = attrvalue.get(self.node, {}).get('collective.manager', {}).get( 'value', None) - if configmodule.list_collective() and not myc: + if list(configmodule.list_collective()) and not myc: self._is_local = False self._detach() self._disconnect() diff --git a/confluent_server/confluent/discovery/core.py b/confluent_server/confluent/discovery/core.py index 56ca9389..b2f399fb 100644 --- a/confluent_server/confluent/discovery/core.py +++ b/confluent_server/confluent/discovery/core.py @@ -1076,7 +1076,7 @@ def discover_node(cfg, handler, info, nodename, manual): traceback.print_exc() return False newnodeattribs = {} - if cfm.list_collective(): + if list(cfm.list_collective()): # We are in a collective, check collective.manager cmc = cfg.get_node_attributes(nodename, 'collective.manager') cm = cmc.get(nodename, {}).get('collective.manager', {}).get('value', None)