diff options
author | Yan, Zheng <zheng.z.yan@intel.com> | 2012-09-11 11:15:26 +0800 |
---|---|---|
committer | Sage Weil <sage@inktank.com> | 2012-09-12 14:13:08 -0700 |
commit | e89cab6b6c5b8f6c1ba57f0655922c6df5e79167 (patch) | |
tree | 16b7c1bc0778efe2778ce107ec9d4bd0580d054d /src/osd/ReplicatedPG.cc | |
parent | c73c440e29b376602ee78c6ddc4a098183170b2d (diff) | |
download | ceph-e89cab6b6c5b8f6c1ba57f0655922c6df5e79167.tar.gz |
osd/ReplicatedPG: set truncate_seq when handling CEPH_OSD_OP_APPEND
We need set truncate_seq when redirect the newop to CEPH_OSD_OP_WRITE,
otherwise the code handles CEPH_OSD_OP_WRITE may quietly drop the data.
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
Signed-off-by: Sage Weil <sage@inktank.com>
Diffstat (limited to 'src/osd/ReplicatedPG.cc')
-rw-r--r-- | src/osd/ReplicatedPG.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 76ac23920ca..cfbfe244382 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -2310,6 +2310,7 @@ int ReplicatedPG::do_osd_ops(OpContext *ctx, vector<OSDOp>& ops) newop.op.op = CEPH_OSD_OP_WRITE; newop.op.extent.offset = oi.size; 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); osd_op.outdata.claim(newop.outdata); |