]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osdc/Objecter: resend RWORDERED ops on full
authorSage Weil <sage@redhat.com>
Fri, 3 Mar 2017 03:20:08 +0000 (21:20 -0600)
committerDavid Zafman <dzafman@redhat.com>
Thu, 21 Sep 2017 03:02:14 +0000 (20:02 -0700)
commitc1946e31f36df4881949c786af3bacdccb7b3289
tree359882a5164768774c6e58ab34841c792c95cc89
parent9ab4294999a773bcdf5375a4619dfb4ea22c5989
osdc/Objecter: resend RWORDERED ops on full

Our condition for respecting the FULL flag is complex, and involves
the WRITE | RWORDERED flags vs the FULL_FORCE | FULL_TRY flags.  Previously,
we could block a read bc of RWORDRED but not resend it later.

Fix by capturing the complex condition in a respects_full() bool and using
it both for the blocking-on-send and resending-on-possibly-notfull-later
checks.

Fixes: http://tracker.ceph.com/issues/19133
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit c4b73f19a7be13ff412eef804efcd8c18ed4dae6)
src/osdc/Objecter.cc
src/osdc/Objecter.h