diff --git a/nebula2/mclient/__init__.py b/nebula2/mclient/__init__.py index d1d963d8..7816cba2 100644 --- a/nebula2/mclient/__init__.py +++ b/nebula2/mclient/__init__.py @@ -19,6 +19,7 @@ ) from nebula2.common.ttypes import HostAddr, ErrorCode from nebula2.meta.ttypes import ( + HostStatus, ListTagsReq, ListEdgesReq, ListSpacesReq, @@ -139,7 +140,11 @@ def list_hosts(self): continue raise RuntimeError("List spaces failed, error code: {}" .format(ErrorCode._VALUES_TO_NAMES.get(resp.code))) - return resp.hosts + valid_hosts = [] + for host in resp.hosts: + if host.status == HostStatus.ONLINE: + valid_hosts.append(host) + return valid_hosts raise RuntimeError("List spaces failed, error code: {}" .format(ErrorCode._VALUES_TO_NAMES.get(resp.code)))