From 5507665a58d909c7c659b233d472c3d3a868130a Mon Sep 17 00:00:00 2001 From: Yehuda Sadeh Date: Tue, 28 Aug 2012 12:51:55 -0700 Subject: [PATCH] rgw: fix usage log read The usage log read got broken in a recent cleanup work. Signed-off-by: Yehuda Sadeh --- src/cls/rgw/cls_rgw_client.cc | 2 ++ src/rgw/rgw_rados.cc | 8 ++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/cls/rgw/cls_rgw_client.cc b/src/cls/rgw/cls_rgw_client.cc index f7975ed8fa64b..29cf389431b09 100644 --- a/src/cls/rgw/cls_rgw_client.cc +++ b/src/cls/rgw/cls_rgw_client.cc @@ -116,6 +116,8 @@ int cls_rgw_usage_log_read(IoCtx& io_ctx, string& oid, string& user, read_iter = result.next_iter; if (is_truncated) *is_truncated = result.truncated; + + usage = result.usage; } catch (buffer::error& e) { return -EINVAL; } diff --git a/src/rgw/rgw_rados.cc b/src/rgw/rgw_rados.cc index 9b105b87fbd38..22fd0eccbe0af 100644 --- a/src/rgw/rgw_rados.cc +++ b/src/rgw/rgw_rados.cc @@ -508,20 +508,20 @@ int RGWRados::read_usage(string& user, uint64_t start_epoch, uint64_t end_epoch, } do { - map usage; + map ret_usage; map::iterator iter; int ret = cls_obj_usage_log_read(hash, user, start_epoch, end_epoch, num, - usage_iter.read_iter, usage, is_truncated); + usage_iter.read_iter, ret_usage, is_truncated); if (ret == -ENOENT) goto next; if (ret < 0) return ret; - num -= usage.size(); + num -= ret_usage.size(); - for (iter = usage.begin(); iter != usage.end(); ++iter) { + for (iter = ret_usage.begin(); iter != ret_usage.end(); ++iter) { usage[iter->first].aggregate(iter->second); } -- 2.39.5