summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/osdc/Objecter.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/osdc/Objecter.h b/src/osdc/Objecter.h
index 9178630fd97..311f6c8fed5 100644
--- a/src/osdc/Objecter.h
+++ b/src/osdc/Objecter.h
@@ -280,8 +280,16 @@ struct ObjectOperation {
out_handler[p] = h;
out_rval[p] = prval;
}
- void write(uint64_t off, bufferlist& bl) {
+ void write(uint64_t off, bufferlist& bl,
+ uint64_t truncate_size,
+ uint32_t truncate_seq) {
add_data(CEPH_OSD_OP_WRITE, off, bl.length(), bl);
+ OSDOp& o = *ops.rbegin();
+ o.op.extent.truncate_size = truncate_size;
+ o.op.extent.truncate_seq = truncate_seq;
+ }
+ void write(uint64_t off, bufferlist& bl) {
+ write(off, bl, 0, 0);
}
void write_full(bufferlist& bl) {
add_data(CEPH_OSD_OP_WRITEFULL, 0, bl.length(), bl);