From: Abhishek Lekshmanan Date: Mon, 24 Feb 2020 14:32:01 +0000 (+0100) Subject: rgw: append obj: prevent tail from being GC'ed X-Git-Tag: v16.1.0~2109^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=2dad52a18f889cca4309e78a88c6c5c2c04d4947;p=ceph.git rgw: append obj: prevent tail from being GC'ed append object tail gets GC'ed otherwise as the state has a manifest similar to atomic obj processor, but if the manifest exists and the position is correct, it is not an overwrite and shouldn't be GC'ed Fixes: https://tracker.ceph.com/issues/42670 Signed-off-by: Abhishek Lekshmanan --- diff --git a/src/rgw/rgw_putobj_processor.cc b/src/rgw/rgw_putobj_processor.cc index 109c491880fd..2f51ff526761 100644 --- a/src/rgw/rgw_putobj_processor.cc +++ b/src/rgw/rgw_putobj_processor.cc @@ -563,6 +563,7 @@ int AppendObjectProcessor::prepare(optional_yield y) } cur_manifest = &(*astate->manifest); manifest.set_prefix(cur_manifest->get_prefix()); + astate->keep_tail = true; } manifest.set_multipart_part_rule(store->ctx()->_conf->rgw_obj_stripe_size, cur_part_num);