]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: fix memory growth while deleteing objects with 30472/head
authorMark Kogan <mkogan@redhat.com>
Thu, 5 Sep 2019 09:32:50 +0000 (12:32 +0300)
committerPrashant D <pdhange@redhat.com>
Thu, 19 Sep 2019 05:23:43 +0000 (01:23 -0400)
radosgw-admin bucket rm --bucket=$BIG_BUCKET --bypass-gc --purge-objects
by freeing <rgw_obj, RGWObjState> map elements allocated at
https://github.com/ceph/ceph/blob/master/src/rgw/rgw_rados.cc#L236
  result = &objs_state[obj];

Fixes: https://tracker.ceph.com/issues/40700
Signed-off-by: Mark Kogan <mkogan@redhat.com>
(cherry picked from commit 21560ed2e141137bbcb4d871eb3908d293a83948)

src/rgw/rgw_bucket.cc

index e1dd5832e6d845629356eaa73bd1c220d9b26bb1..087403befd51075a9ec4ef2500c7e932cdbb813a 100644 (file)
@@ -729,6 +729,7 @@ int rgw_remove_bucket_bypass_gc(RGWRados *store, rgw_bucket& bucket,
         }
         max_aio = concurrent_max;
       }
+      obj_ctx.invalidate(obj);
     } // for all RGW objects
   }