]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/ReplicatedPG: for writefull, offset is zero so replace offset w/ zero. 4937/head
authorJianpeng Ma <jianpeng.ma@intel.com>
Thu, 2 Jul 2015 09:05:53 +0000 (17:05 +0800)
committerJianpeng Ma <jianpeng.ma@intel.com>
Thu, 2 Jul 2015 09:05:53 +0000 (17:05 +0800)
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
src/osd/ReplicatedPG.cc

index 7312c8efea0f81ab47a1e7529c8dcb63c5f2a290..20fe86792e4114d148d64565c9c5264fdb828f46 100644 (file)
@@ -4228,13 +4228,13 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
     case CEPH_OSD_OP_WRITEFULL:
       ++ctx->num_write;
       { // write full object
-       tracepoint(osd, do_osd_op_pre_writefull, soid.oid.name.c_str(), soid.snap.val, oi.size, op.extent.offset, op.extent.length);
+       tracepoint(osd, do_osd_op_pre_writefull, soid.oid.name.c_str(), soid.snap.val, oi.size, 0, op.extent.length);
 
        if (op.extent.length != osd_op.indata.length()) {
          result = -EINVAL;
          break;
        }
-       result = check_offset_and_length(op.extent.offset, op.extent.length, cct->_conf->osd_max_object_size);
+       result = check_offset_and_length(0, op.extent.length, cct->_conf->osd_max_object_size);
        if (result < 0)
          break;
 
@@ -4250,7 +4250,7 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
            }
          }
          ctx->mod_desc.create();
-         t->append(soid, op.extent.offset, op.extent.length, osd_op.indata, op.flags);
+         t->append(soid, 0, op.extent.length, osd_op.indata, op.flags);
          if (obs.exists) {
            map<string, bufferlist> to_set = ctx->obc->attr_cache;
            map<string, boost::optional<bufferlist> > &overlay =
@@ -4269,7 +4269,7 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
          }
        } else {
          ctx->mod_desc.mark_unrollbackable();
-         t->write(soid, op.extent.offset, op.extent.length, osd_op.indata, op.flags);
+         t->write(soid, 0, op.extent.length, osd_op.indata, op.flags);
          if (obs.exists && op.extent.length < oi.size) {
            t->truncate(soid, op.extent.length);
          }
@@ -4278,9 +4278,7 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops)
        obs.oi.set_data_digest(osd_op.indata.crc32c(-1));
 
        write_update_size_and_usage(ctx->delta_stats, oi, ctx->modified_ranges,
-           op.extent.offset, op.extent.length, true,
-           op.extent.offset + op.extent.length != oi.size ? true : false);
-
+           0, op.extent.length, true, op.extent.length != oi.size ? true : false);
       }
       break;