From 9bcfd2f90715e48374af49e21949e246ab91afad Mon Sep 17 00:00:00 2001 From: shreyanshjain7174 Date: Sun, 25 Dec 2022 22:43:34 -0600 Subject: [PATCH] mon: stuck peering since warning is misleading When osds restart or manually marked down it is common to see a HEALTH_WARN claiming that PGs have been stuck peering since awhile, even though they were active. The warning is to be issued if they really are stuck peering longer than 60s. Fixes: https://tracker.ceph.com/issues/51688 Signed-off-by: shreyanshjain7174 (cherry picked from commit 48a8a6c78f5c2efa2a15bf78bed7de8394ec5370) --- src/mon/PGMap.cc | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/src/mon/PGMap.cc b/src/mon/PGMap.cc index 0712e0881f2ac..326d589b705ad 100644 --- a/src/mon/PGMap.cc +++ b/src/mon/PGMap.cc @@ -3849,32 +3849,6 @@ static void _try_mark_pg_stale( newstat->last_unstale = ceph_clock_now(); } - if ((cur.state & PG_STATE_PEERING) == 0 && - cur.acting_primary != -1 && - osdmap.is_down(cur.acting_primary)) { - pg_stat_t *newstat; - auto q = pending_inc->pg_stat_updates.find(pgid); - if (q != pending_inc->pg_stat_updates.end()) { - if ((q->second.acting_primary == cur.acting_primary) || - ((q->second.state & PG_STATE_PEERING) == 0 && - q->second.acting_primary != -1 && - osdmap.is_down(q->second.acting_primary))) { - newstat = &q->second; - } else { - // pending update is no longer down or already stale - return; - } - } else { - newstat = &pending_inc->pg_stat_updates[pgid]; - *newstat = cur; - } - dout(10) << __func__ << " marking pg " << pgid - << " stale (acting_primary " << newstat->acting_primary - << ")" << dendl; - newstat->state |= PG_STATE_PEERING; - newstat->last_peered = ceph_clock_now(); - } - } void PGMapUpdater::check_down_pgs( -- 2.39.5