Merge pull request #18519 from liewegas/wip-21712-c

ceph_test_objectstore: do not change model for 0-length zero

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
This commit is contained in:
Sage Weil 2017-10-27 17:41:35 -05:00 committed by GitHub
commit cd94b1bedf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -3914,16 +3914,18 @@ public:
len = ROUND_UP_TO(len, write_alignment);
}
auto& data = contents[new_obj].data;
if (data.length() < offset + len) {
data.append_zero(offset+len-data.length());
if (len > 0) {
auto& data = contents[new_obj].data;
if (data.length() < offset + len) {
data.append_zero(offset+len-data.length());
}
bufferlist n;
n.substr_of(data, 0, offset);
n.append_zero(len);
if (data.length() > offset + len)
data.copy(offset + len, data.length() - offset - len, n);
data.swap(n);
}
bufferlist n;
n.substr_of(data, 0, offset);
n.append_zero(len);
if (data.length() > offset + len)
data.copy(offset + len, data.length() - offset - len, n);
data.swap(n);
t.zero(cid, new_obj, offset, len);
++in_flight;