]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: fix max-size-kb REST quota parameter and add max-size 24062/head
authorNick Erdmann <n.erdmann@itc.rwth-aachen.de>
Mon, 24 Sep 2018 10:48:57 +0000 (12:48 +0200)
committerNick Erdmann <n.erdmann@itc.rwth-aachen.de>
Mon, 24 Sep 2018 10:48:57 +0000 (12:48 +0200)
Signed-off-by: Nick Erdmann <n@nirf.de>
doc/radosgw/adminops.rst
src/rgw/rgw_rest_user.cc

index cd9e579268e2a3afb40d2e07a78f528d92d573f2..062abb0946ad9649a33bb06eda015e500130de6a 100644 (file)
@@ -1862,7 +1862,8 @@ Valid parameters for quotas include:
   the maximum number of objects. A negative value disables this setting.
 
 - **Maximum Size:** The ``max-size`` option allows you to specify a quota
-  for the maximum number of bytes. A negative value disables this setting.
+  for the maximum number of bytes. The ``max-size-kb`` option allows you
+  to specify it in KiB. A negative value disables this setting.
 
 - **Quota Type:** The ``quota-type`` option sets the scope for the quota.
   The options are ``bucket`` and ``user``.
index 5efb6a75760e329e7a03aa7c1627711a01b913f0..87a3cb7d03d61fbec75b8d5fefa0d6621ffc04c3 100644 (file)
@@ -897,11 +897,14 @@ void RGWOp_Quota_Set::execute()
         old_quota = &info.bucket_quota;
       }
 
-      int64_t old_max_size_kb = rgw_rounded_kb(old_quota->max_size);
-      int64_t max_size_kb;
       RESTArgs::get_int64(s, "max-objects", old_quota->max_objects, &quota.max_objects);
-      RESTArgs::get_int64(s, "max-size-kb", old_max_size_kb, &max_size_kb);
-      quota.max_size = max_size_kb * 1024;
+      RESTArgs::get_int64(s, "max-size", old_quota->max_size, &quota.max_size);
+      int64_t max_size_kb;
+      bool has_max_size_kb = false;
+      RESTArgs::get_int64(s, "max-size-kb", 0, &max_size_kb, &has_max_size_kb);
+      if (has_max_size_kb) {
+        quota.max_size = max_size_kb * 1024;
+      }
       RESTArgs::get_bool(s, "enabled", old_quota->enabled, &quota.enabled);
     }