]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
objecter: don't take extra throttle budget for resent ops
authorJosh Durgin <josh.durgin@inktank.com>
Sat, 7 Dec 2013 00:03:20 +0000 (16:03 -0800)
committerSage Weil <sage@inktank.com>
Mon, 30 Dec 2013 16:49:22 +0000 (08:49 -0800)
These ops have already taken their budget in the original op_submit().
It will be returned via put_op_budget() when they complete.
If there were many localized reads of missing objects from replicas,
or cache pool redirects, this would cause the objecter to use up all
of its op throttle budget and hang.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
(cherry picked from commit 8d0180b1b7b48662daef199931efc7f2a6a1c431)

Conflicts:

src/osdc/Objecter.cc

src/osdc/Objecter.cc

index 4934dba700eec58ec152625cec3427fc536d8219..b33ef277df440e9ffa4574386080b4407137bf35 100644 (file)
@@ -1561,7 +1561,7 @@ void Objecter::handle_osd_op_reply(MOSDOpReply *m)
       num_unacked--;
     if (op->oncommit)
       num_uncommitted--;
-    op_submit(op);
+    _op_submit(op);
     m->put();
     return;
   }