From 3ca24749fa1db6bf35773e9095329a2ca4ee4072 Mon Sep 17 00:00:00 2001 From: Yehuda Sadeh Date: Fri, 9 Mar 2018 11:32:42 -0800 Subject: [PATCH] cls/rgw: if trimmed any entries don't return -ENODATA Signed-off-by: Yehuda Sadeh --- src/cls/rgw/cls_rgw.cc | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/cls/rgw/cls_rgw.cc b/src/cls/rgw/cls_rgw.cc index 0d5d36736e99..9eb3e88548b7 100644 --- a/src/cls/rgw/cls_rgw.cc +++ b/src/cls/rgw/cls_rgw.cc @@ -3042,6 +3042,10 @@ int rgw_user_usage_log_read(cls_method_context_t hctx, bufferlist *in, bufferlis static int usage_log_trim_cb(cls_method_context_t hctx, const string& key, rgw_usage_log_entry& entry, void *param) { + bool *found = (bool *)param; + if (found) { + *found = true; + } string key_by_time; string key_by_user; @@ -3077,12 +3081,13 @@ int rgw_user_usage_log_trim(cls_method_context_t hctx, bufferlist *in, bufferlis string iter; bool more; + bool found = false; #define MAX_USAGE_TRIM_ENTRIES 128 - ret = usage_iterate_range(hctx, op.start_epoch, op.end_epoch, op.user, iter, MAX_USAGE_TRIM_ENTRIES, &more, usage_log_trim_cb, NULL); + ret = usage_iterate_range(hctx, op.start_epoch, op.end_epoch, op.user, iter, MAX_USAGE_TRIM_ENTRIES, &more, usage_log_trim_cb, (void *)&found); if (ret < 0) return ret; - if (!more) + if (!more && !found) return -ENODATA; return 0; -- 2.47.3