]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osdc/Objecter: resend RWORDERED ops on full 14427/head
authorSage Weil <sage@redhat.com>
Fri, 3 Mar 2017 03:20:08 +0000 (21:20 -0600)
committerNathan Cutler <ncutler@suse.com>
Mon, 10 Apr 2017 11:06:35 +0000 (13:06 +0200)
commitf2474042ecd6560323673170c13f2cb964406e70
tree498a7ed31b959c076dfed645436b6117a5ff749c
parent2d68822c784eb4d62d3b0198ed4ec04404dbffb3
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