From bcc92f59fdcd837ccc5a560fe37bdf0619075505 Mon Sep 17 00:00:00 2001 From: Max Fitton Date: Tue, 17 Nov 2020 10:54:57 -0800 Subject: [PATCH] [Dashboard] Patch issue in 1.0.1 release where worker stats are not present for a node (#12062) --- python/ray/dashboard/dashboard.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/python/ray/dashboard/dashboard.py b/python/ray/dashboard/dashboard.py index a6dbe1e15..1dca1dd44 100644 --- a/python/ray/dashboard/dashboard.py +++ b/python/ray/dashboard/dashboard.py @@ -81,7 +81,7 @@ class DashboardController(BaseDashboardController): def _construct_raylet_info(self): D = self.raylet_stats.get_raylet_stats() workers_info_by_node = { - data["nodeId"]: data.get("workersStats") + data["nodeId"]: data.get("workersStats", []) for data in D.values() } @@ -165,7 +165,7 @@ class DashboardController(BaseDashboardController): self.raylet_stats.include_memory_info = True D = self.raylet_stats.get_raylet_stats() workers_info_by_node = { - data["nodeId"]: data.get("workersStats") + data["nodeId"]: data.get("workersStats", []) for data in D.values() } self.memory_table = construct_memory_table( @@ -696,7 +696,8 @@ class RayletStats(threading.Thread): node_manager_pb2.GetNodeStatsRequest( include_memory_info=self.include_memory_info), timeout=2) - reply_dict = MessageToDict(reply) + reply_dict = MessageToDict( + reply, including_default_value_fields=True) reply_dict["nodeId"] = node_id replies[node["NodeManagerAddress"]] = reply_dict with self._raylet_stats_lock: