From 3a40fa412727bd25f9317816673c8278324b7968 Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Sat, 27 Mar 2021 01:15:05 +0300 Subject: [PATCH] Fix monitor errors in case of OSD removal --- mon/mon.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mon/mon.js b/mon/mon.js index e49e6bf1..06810c3e 100644 --- a/mon/mon.js +++ b/mon/mon.js @@ -541,7 +541,7 @@ class Mon for (const osd_num of this.all_osds().sort((a, b) => a - b)) { const stat = this.state.osd.stats[osd_num]; - if (stat.size && (this.state.osd.state[osd_num] || Number(stat.time) >= down_time)) + if (stat && stat.size && (this.state.osd.state[osd_num] || Number(stat.time) >= down_time)) { // Numeric IDs are reserved for OSDs const osd_cfg = this.state.config.osd[osd_num]; @@ -1072,7 +1072,7 @@ class Mon const op_stats = {}, subop_stats = {}, recovery_stats = {}; for (const osd in this.state.osd.stats) { - const st = this.state.osd.stats[osd]; + const st = this.state.osd.stats[osd]||{}; for (const op in st.op_stats||{}) { op_stats[op] = op_stats[op] || { count: 0n, usec: 0n, bytes: 0n };