From: Sage Weil Date: Fri, 31 Jan 2020 17:55:03 +0000 (-0600) Subject: osdc/Objecter: only pause if respects_full() X-Git-Tag: v15.1.1~562^2~2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=130596f321d21c2a57134e1a2b0daed4fbf287eb;p=ceph-ci.git osdc/Objecter: only pause if respects_full() If the FULL_TRY or _FORCE flag is set on an op, then we should not pause it due to a full flag. Fixes: https://tracker.ceph.com/issues/43813 Signed-off-by: Sage Weil --- diff --git a/src/osdc/Objecter.cc b/src/osdc/Objecter.cc index 6c2e88185b1..05e9febcc20 100644 --- a/src/osdc/Objecter.cc +++ b/src/osdc/Objecter.cc @@ -2656,7 +2656,7 @@ bool Objecter::target_should_be_paused(op_target_t *t) const pg_pool_t *pi = osdmap->get_pg_pool(t->base_oloc.pool); bool pauserd = osdmap->test_flag(CEPH_OSDMAP_PAUSERD); bool pausewr = osdmap->test_flag(CEPH_OSDMAP_PAUSEWR) || - _osdmap_full_flag() || _osdmap_pool_full(*pi); + (t->respects_full() && (_osdmap_full_flag() || _osdmap_pool_full(*pi))); return (t->flags & CEPH_OSD_FLAG_READ && pauserd) || (t->flags & CEPH_OSD_FLAG_WRITE && pausewr) ||