Project

General

Profile

Bug #37378 » copy-from.patch

Luis Henriques, 11/29/2018 02:15 PM

View differences:

src/include/rados.h
CEPH_OSD_COPY_FROM_FLAG_MAP_SNAP_CLONE = 8, /* map snap direct to
* cloneid */
CEPH_OSD_COPY_FROM_FLAG_RWORDERED = 16, /* order with write */
CEPH_OSD_COPY_FROM_FLAG_IGNORE_TRUNCATE_SEQ = 32, /* don't copy
* truncate_seq */
};
enum {
src/osd/PrimaryLogPG.cc
obs.oi.clear_omap_digest();
}
obs.oi.truncate_seq = cb->results->truncate_seq;
obs.oi.truncate_size = cb->results->truncate_size;
unsigned flags = 0;
map<hobject_t,CopyOpRef>::iterator p = copy_ops.find(obs.oi.soid);
if (p != copy_ops.end()) {
CopyOpRef cop = p->second;
flags = cop->flags;
}
if (!(flags & CEPH_OSD_COPY_FROM_FLAG_IGNORE_TRUNCATE_SEQ)) {
obs.oi.truncate_seq = cb->results->truncate_seq;
obs.oi.truncate_size = cb->results->truncate_size;
}
ctx->extra_reqids = cb->results->reqids;
ctx->extra_reqid_return_codes = cb->results->reqid_return_codes;
(1-1/2)