-
Bug
-
Resolution: Not a Bug
-
Major
-
None
-
None
This issue is to address the FR2 Known Issue with unified limits and proxy quota APIs:
The following Nova APIs do not proxy to Keystone at this time, meaning that when calling the API you will not see the limits you set in Keystone – you will instead see legacy quota limits which are not being used when unified limits are enabled. This will be fixed in the next bug fix release. Note that GET /limits is the API used by Horizon to show quota limits.
- GET /limits (https://docs.openstack.org/api-ref/compute/#limits-limits)
- GET /os-quota-sets/{project_id} (https://docs.openstack.org/api-ref/compute/#show-a-quota)
- GET /os-quota-sets/{project_id}/defaults (https://docs.openstack.org/api-ref/compute/#list-default-quotas-for-tenant)
The following Nova APIs will NOT work with unified limits and will not be proxied to Keystone. They are intended for deprecation and eventual removal when legacy quotas are deprecated and removed:
- PUT /os-quota-sets/{project_id}
- DELETE /os-quota-sets/{project_id}
- GET /os-quota-class-sets/{id}
- PUT /os-quota-class-sets/{id}
During QE testing of unified limits, we discovered that we are missing proxy APIs from legacy quota APIs to unified limits that were originally intended [1].
Because of the missing proxy APIs, users of unified limits will see discrepancies if they use any of the following APIs:
- GET /limits
- GET /os-quota-sets/{project_id}
- GET /os-quota-sets/{project_id}/defaults
When unified limits are enabled, the above APIs will still return unused legacy quota limits instead of returning Keystone limits. This also means that Horizon will show users unused legacy quota limits because Horizon uses the GET /limits API.
We need to fix this for the next bug release.