attrset.erase(RGW_ATTR_ID_TAG);
attrset.erase(RGW_ATTR_TAIL_TAG);
attrset.erase(RGW_ATTR_STORAGE_CLASS);
+ attrset.erase(RGW_ATTR_SHARE_MANIFEST);
+ attrset.erase(RGW_ATTR_BLAKE3);
ACLOwner owner;
if (auto i = attrset.find(RGW_ATTR_ACL); i != attrset.end()) {
if (!keep_tags) {
attrs.erase(RGW_ATTR_TAGS);
}
+ attrs.erase(RGW_ATTR_SHARE_MANIFEST);
+ attrs.erase(RGW_ATTR_BLAKE3);
if (copy_if_newer) {
uint64_t pg_ver = 0;
if (copy_data) { /* refcounting tail wouldn't work here, just copy the data */
attrs.erase(RGW_ATTR_TAIL_TAG);
+ attrs.erase(RGW_ATTR_SHARE_MANIFEST);
+ attrs.erase(RGW_ATTR_BLAKE3);
// Data is rewritten as a single stream; drop stale multipart boundaries
attrs.erase(RGW_ATTR_CRYPT_PARTS);
attrs.erase(RGW_ATTR_CRYPT_PART_NUMS);
if (!copy_itself) {
aio = rgw::make_throttle(cct->_conf->rgw_max_copy_obj_concurrent_io, y);
attrs.erase(RGW_ATTR_TAIL_TAG);
+ attrs.erase(RGW_ATTR_SHARE_MANIFEST);
+ attrs.erase(RGW_ATTR_BLAKE3);
manifest = *amanifest;
const rgw_bucket_placement& tail_placement = manifest.get_tail_placement();
if (tail_placement.bucket.name.empty()) {
}
attrs.erase(RGW_ATTR_ID_TAG);
attrs.erase(RGW_ATTR_TAIL_TAG);
+ attrs.erase(RGW_ATTR_SHARE_MANIFEST);
+ attrs.erase(RGW_ATTR_BLAKE3);
ACLOwner owner;
if (auto i = attrs.find(RGW_ATTR_ACL); i != attrs.end()) {