]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: Fix appending write to return any error back to caller
authorDavid Zafman <david.zafman@inktank.com>
Sat, 5 Apr 2014 02:07:32 +0000 (19:07 -0700)
committerDavid Zafman <david.zafman@inktank.com>
Wed, 9 Apr 2014 18:35:38 +0000 (11:35 -0700)
Also, correct double bumping of num_writes

Signed-off-by: David Zafman <david.zafman@inktank.com>
src/osd/ReplicatedPG.cc

index 30e3f15cbc7998996f9b0f9cc387c90e54525096..a5b856b006f8d80b4d16ead8b7d620e8de8fab2d 100644 (file)
@@ -3982,7 +3982,6 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
 
       // -- fancy writers --
     case CEPH_OSD_OP_APPEND:
-      ++ctx->num_write;
       {
        // just do it inline; this works because we are happy to execute
        // fancy op on replicas as well.
@@ -3993,7 +3992,7 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
        newop.op.extent.length = op.extent.length;
        newop.op.extent.truncate_seq = oi.truncate_seq;
         newop.indata = osd_op.indata;
-       do_osd_ops(ctx, nops);
+       result = do_osd_ops(ctx, nops);
        osd_op.outdata.claim(newop.outdata);
       }
       break;