mirror of
https://github.com/ceph/ceph
synced 2025-03-11 02:39:05 +00:00
Merge pull request #24062 from nrdmn/fix-quota
rgw: fix max-size in radosgw-admin and REST Admin API Reviewed-by: Casey Bodley <cbodley@redhat.com>
This commit is contained in:
commit
0fd7413b79
@ -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``.
|
||||
|
@ -2842,7 +2842,7 @@ int main(int argc, const char **argv)
|
||||
return EINVAL;
|
||||
}
|
||||
} else if (ceph_argparse_witharg(args, i, &val, "--max-size", (char*)NULL)) {
|
||||
max_size = strict_iecstrtoll(val.c_str(), &err);
|
||||
max_size = strict_iec_cast<long long>(val.c_str(), &err);
|
||||
if (!err.empty()) {
|
||||
cerr << "ERROR: failed to parse max size: " << err << std::endl;
|
||||
return EINVAL;
|
||||
|
@ -866,11 +866,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, "a.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, "a.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, "a.enabled);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user