From: 9seconds Date: Wed, 1 Apr 2015 06:12:06 +0000 (+0300) Subject: rgw: quota not respected in POST object X-Git-Tag: v0.80.11~64^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d78e31f005756700e15d26d187c6cef6d5d24a7a;p=ceph.git rgw: quota not respected in POST object Signed-off-by: Sergey Arkhipov Backport: hammer, firefly Fixes: #11323 (cherry picked from commit e76f84e179d2ba8bfc0dc5abf4e620fef14bc8a0) Conflicts: src/rgw/rgw_op.cc discard the whitespace modification hunks that were creating conflicts and ignore the conflict due to an unrelated cast modification in the context --- diff --git a/src/rgw/rgw_op.cc b/src/rgw/rgw_op.cc index d436e3a67e0..2eef5b0d5e8 100644 --- a/src/rgw/rgw_op.cc +++ b/src/rgw/rgw_op.cc @@ -1789,6 +1789,12 @@ void RGWPostObj::execute() goto done; } + ret = store->check_quota(s->bucket_owner.get_id(), s->bucket, + user_quota, bucket_quota, s->content_length); + if (ret < 0) { + goto done; + } + processor = select_processor(); ret = processor->prepare(store, s->obj_ctx, NULL); @@ -1824,6 +1830,12 @@ void RGWPostObj::execute() s->obj_size = ofs; + ret = store->check_quota(s->bucket_owner.get_id(), s->bucket, + user_quota, bucket_quota, s->obj_size); + if (ret < 0) { + goto done; + } + hash.Final(m); buf_to_hex(m, CEPH_CRYPTO_MD5_DIGESTSIZE, calc_md5);