From e03b85e987f22707725585501e642c862fbbf104 Mon Sep 17 00:00:00 2001 From: Orit Wasserman Date: Thu, 18 May 2017 22:48:28 +0300 Subject: [PATCH] rgw: check for bucket resharding when adding an object Signed-off-by: Orit Wasserman --- src/rgw/rgw_op.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/rgw/rgw_op.cc b/src/rgw/rgw_op.cc index d4a9326c3dd..cc9f290ecad 100644 --- a/src/rgw/rgw_op.cc +++ b/src/rgw/rgw_op.cc @@ -3118,6 +3118,16 @@ void RGWPutObj::execute() ldout(s->cct, 20) << "check_quota() returned ret=" << op_ret << dendl; goto done; } + bool need_resharding = false; + op_ret = store->check_bucket_shards(s->bucket_owner.get_id(), s->bucket, + bucket_quota, s->bucket_info.num_shards, need_resharding); + if (op_ret < 0) { + ldout(s->cct, 20) << "check_bucket_shards() returned ret=" << op_ret << dendl; + goto done; + } else if (need_resharding) { + /* Add to resharding queue */ + ldout(s->cct, 20) << s->bucket << " needs resharding " << dendl; + } } if (supplied_etag) { -- 2.39.5