]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
rgw: fix versioned obj copy generating tags
authorAbhishek Lekshmanan <abhishek@suse.com>
Mon, 10 Dec 2018 15:55:55 +0000 (16:55 +0100)
committerAbhishek Lekshmanan <abhishek@suse.com>
Mon, 10 Dec 2018 15:55:55 +0000 (16:55 +0100)
commit427213682825e7c01b246d0324e636798875b60e
treea4da230555dbd9090372838f13e48e9525de398c
parent4d3cc9f9092d8a86d128192a811733ce23ad070a
rgw: fix versioned obj copy generating tags

We fail to generate obj_tag and tail tags for a versioned object copy, as we
don't set the object instance until later and the atomic state hence isn't set
for this object as we call `prepare_atomic_modification` which checks for
atomicity before setting write tags. Since the tag is later used by the GC
processor for refcounting, versioned objects are not cleaned up leaving orphaned
tail instances behind. For older objects these will have to be manually cleaned
up, while this commit should fix the issues for newer versioned copy

Fixes: http://tracker.ceph.com/issues/37588
Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
src/rgw/rgw_op.cc
src/rgw/rgw_rados.cc