From: weiqiaomiao Date: Wed, 1 Jun 2016 09:20:49 +0000 (+0800) Subject: rgw:fix memory leaks X-Git-Tag: v10.2.8~43^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F15382%2Fhead;p=ceph.git rgw:fix memory leaks Signed-off-by: weiqiaomiao (cherry picked from commit 73e5be2b6133cf4caa0e5e5c8c9eae748b785dbf) --- diff --git a/src/rgw/rgw_data_sync.cc b/src/rgw/rgw_data_sync.cc index b7957e5fa6c..28e703629c3 100644 --- a/src/rgw/rgw_data_sync.cc +++ b/src/rgw/rgw_data_sync.cc @@ -367,6 +367,7 @@ public: int request_complete() { int ret = http_op->wait(result); + http_op->put(); if (ret < 0 && ret != -ENOENT) { ldout(sync_env->store->ctx(), 0) << "ERROR: failed to list remote datalog shard, ret=" << ret << dendl; return ret; diff --git a/src/rgw/rgw_sync.cc b/src/rgw/rgw_sync.cc index 4ff9d1944d6..4617cd9dd05 100644 --- a/src/rgw/rgw_sync.cc +++ b/src/rgw/rgw_sync.cc @@ -494,6 +494,7 @@ public: } yield { int ret = http_op->wait(shard_info); + http_op->put(); if (ret < 0) { return set_cr_error(ret); } @@ -558,6 +559,7 @@ public: int request_complete() { int ret = http_op->wait(result); + http_op->put(); if (ret < 0 && ret != -ENOENT) { ldout(sync_env->store->ctx(), 0) << "ERROR: failed to list remote mdlog shard, ret=" << ret << dendl; return ret; @@ -951,6 +953,7 @@ public: } yield { int ret = http_op->wait_bl(pbl); + http_op->put(); if (ret < 0) { return set_cr_error(ret); }