fix bug in quota checking

When project quota set unlimited(-1), and user in the
project is limited to a value.Then project quota must
smaller than project usage when checking quotas, which
means the value 'overs' is not None.
In this case, even though the user not over the quota,
but they can not create share

Closes-bug: #1872872

Change-Id: Id9e2bcb5d30d2b81b0723dd296b537ac7d4519f2
(cherry picked from commit 7800539682)
This commit is contained in:
zhangqing 2020-03-17 20:50:49 +08:00 committed by Goutham Pacha Ravi
parent 1c33ec3260
commit 73837ce05a
2 changed files with 8 additions and 1 deletions

View File

@ -1070,7 +1070,7 @@ def _quota_reserve(context, resources, project_quotas, user_or_st_quotas,
project_usages[key] = value
overs = [res for res, delta in deltas.items()
if user_or_st_quotas[res] >= 0 and delta >= 0 and
(project_quotas[res] < delta +
(0 <= project_quotas[res] < delta +
project_usages[res]['total'] or
user_or_st_quotas[res] < delta +
user_or_st_usages[res].total)]

View File

@ -0,0 +1,7 @@
---
fixes:
- |
Fixed quota issue that made it impossible to create resources when the project had the quotas
set to unlimited, and the user had a limited amount of quotas to use. Now, operations in the
mentioned quota scenario are working properly. Please see `Launchpad bug 1872872
<https://bugs.launchpad.net/manila/+bug/1872872>`_ for more details.