diff --git a/src/osd_peering.cpp b/src/osd_peering.cpp index e50ca121..ef8ee53b 100644 --- a/src/osd_peering.cpp +++ b/src/osd_peering.cpp @@ -27,9 +27,9 @@ void osd_t::handle_peers() misplaced_objects += p.second.misplaced_objects.size(); // FIXME: degraded objects may currently include misplaced, too! Report them separately? degraded_objects += p.second.degraded_objects.size(); - if ((p.second.state & (PG_ACTIVE | PG_HAS_UNCLEAN)) == (PG_ACTIVE | PG_HAS_UNCLEAN)) + if (p.second.state & PG_HAS_UNCLEAN) peering_state = peering_state | OSD_FLUSHING_PGS; - else if (p.second.state & PG_ACTIVE) + else if (p.second.state & PG_HAS_DEGRADED) peering_state = peering_state | OSD_RECOVERING; } else