← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1591429] [NEW] User quota not working when project quotas set to unlimited.

 

Public bug reported:

Description
===========
User is unable to boot an instance when user quota exist and project quota for instance, ram, or cores are set to unlimited(-1).
 

Steps to reproduce
==================

1. Tenant quotas are set to unlimited for instances,core,and ram.

root@osad-aio:~# export tenant=$(openstack project list | awk '/support-test/ { print $2 }')
root@osad-aio:~# export tuser=$(openstack user list | awk '/test-user/ { print $2 }')
root@osad-aio:~# nova quota-update --instances -1 --cores -1 --ram -1 $tenant

root@osad-aio:~# nova quota-show --tenant $tenant
+-----------------------------+-------+
| Quota                       | Limit |
+-----------------------------+-------+
| instances                   | -1    |
| cores                       | -1    |
| ram                         | -1    |
| floating_ips                | 10    |
| fixed_ips                   | -1    |
| metadata_items              | 128   |
| injected_files              | 5     |
| injected_file_content_bytes | 10240 |
| injected_file_path_bytes    | 255   |
| key_pairs                   | 100   |
| security_groups             | 10    |
| security_group_rules        | 20    |
| server_groups               | 10    |
| server_group_members        | 10    |
+-----------------------------+-------+


2. User quotas are set for user under tenant.
root@osad-aio:~# nova quota-update --instances 4 --cores 20 --ram 4096 --user $tuser $tenant

root@osad-aio:~# nova quota-show --user $tuser --tenant $tenant
+-----------------------------+-------+
| Quota                       | Limit |
+-----------------------------+-------+
| instances                   | 4     |
| cores                       | 20    |
| ram                         | 4096  |
| floating_ips                | 10    |
| fixed_ips                   | -1    |
| metadata_items              | 128   |
| injected_files              | 5     |
| injected_file_content_bytes | 10240 |
| injected_file_path_bytes    | 255   |
| key_pairs                   | 100   |
| security_groups             | 10    |
| security_group_rules        | 20    |
| server_groups               | 10    |
| server_group_members        | 10    |
+-----------------------------+-------+


3. Booting of the instance fails due to quota exceeding.  Additional debugging output below [0]

root@osad-aio:~# nova boot --security-groups default --image 9fde3d51-05f2-4de8-83e2-2c93f1085194 --nic net-id=0d415531-a990-4bb2-9b0e-09cf43543559 --flavor 1 test-instance
ERROR (Forbidden): Quota exceeded for cores, instances, ram: Requested 1, 1, 512, but already used 0, 0, 0 of 20, 4, 4096 cores, instances, ram (HTTP 403) (Request-ID: req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72


4. Setting limits instead of unlimited on the project fixes the inability for the user to boot the instance.

root@osad-aio:~# nova quota-update --instances 65535 --cores 65535 --ram
65535 $tenant

root@osad-aio:~# nova quota-show --tenant $tenant
+-----------------------------+-------+
| Quota                       | Limit |
+-----------------------------+-------+
| instances                   | 65535 |
| cores                       | 65535 |
| ram                         | 65535 |
| floating_ips                | 10    |
| fixed_ips                   | -1    |
| metadata_items              | 128   |
| injected_files              | 5     |
| injected_file_content_bytes | 10240 |
| injected_file_path_bytes    | 255   |
| key_pairs                   | 100   |
| security_groups             | 10    |
| security_group_rules        | 20    |
| server_groups               | 10    |
| server_group_members        | 10    |
+-----------------------------+-------


root@osad-aio:~# nova boot --security-groups default --image 9fde3d51-05f2-4de8-83e2-2c93f1085194 --nic net-id=0d415531-a990-4bb2-9b0e-09cf43543559 --flavor 1 test-instance
+--------------------------------------+-----------------------------------------------+
| Property                             | Value                                         |
+--------------------------------------+-----------------------------------------------+
| OS-DCF:diskConfig                    | MANUAL                                        |
| OS-EXT-AZ:availability_zone          |                                               |
| OS-EXT-STS:power_state               | 0                                             |
| OS-EXT-STS:task_state                | scheduling                                    |
| OS-EXT-STS:vm_state                  | building                                      |
| OS-SRV-USG:launched_at               | -                                             |
| OS-SRV-USG:terminated_at             | -                                             |
| accessIPv4                           |                                               |
| accessIPv6                           |                                               |
| adminPass                            | 58hgCXuyHpsQ                                  |
| config_drive                         |                                               |
| created                              | 2016-06-11T02:21:11Z                          |
| flavor                               | m1.tiny (1)                                   |
| hostId                               |                                               |
| id                                   | 39e85e03-fd8b-4965-b2a9-99bea21d634b          |
| image                                | cirros (9fde3d51-05f2-4de8-83e2-2c93f1085194) |
| key_name                             | -                                             |
| metadata                             | {}                                            |
| name                                 | test-instance                                 |
| os-extended-volumes:volumes_attached | []                                            |
| progress                             | 0                                             |
| security_groups                      | default                                       |
| status                               | BUILD                                         |
| tenant_id                            | 7af55b5e15004e1fb99c2303b6a597af              |
| updated                              | 2016-06-11T02:21:11Z                          |
| user_id                              | 9b73ca1932564ae092b447168eba49f1              |
+--------------------------------------+-----------------------------------------------


Expected result
===============
Able to boot an instance with user quotas enabled.

Actual result
=============


Environment
===========
1. Exact version of OpenStack you are running. See the following

Liberty version 12.0.3

2. Which hypervisor did you use?
Libvirt + KVM

2. Which storage type did you use?
N/A

3. Which networking type did you use?
Neutron w/ Linux Bridge


[0]

[nova version]
(nova-12.0.10)root@osad-aio:~# nova-compute --version
12.0.3


[debug output]

2016-06-10 21:14:31.259 577 DEBUG nova.api.openstack.wsgi [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Action: 'create', calling method: <bound method ServersController.create of <nova.api.openstack.compute.servers.ServersController object at 0x7fce2fe61190>>, body: {"server": {"name": "test-instance", "imageRef": "9fde3d51-05f2-4de8-83e2-2c93f1085194", "flavorRef": "1", "max_count": 1, "min_count": 1, "networks": [{"uuid": "0d415531-a990-4bb2-9b0e-09cf43543559"}], "security_groups": [{"name": "default"}]}} _process_stack /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/wsgi.py:789
2016-06-10 21:14:31.261 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=SchedulerHints, alias=os-scheduler-hints, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.261 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=Keypairs, alias=os-keypairs, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.262 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=BlockDeviceMapping, alias=os-block-device-mapping, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.262 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=AccessIPs, alias=os-access-ips, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.263 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=BlockDeviceMappingV1, alias=os-block-device-mapping-v1, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.263 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=DiskConfig, alias=os-disk-config, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.264 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=UserData, alias=os-user-data, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.264 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=AvailabilityZone, alias=os-availability-zone, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.265 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=MultipleCreate, alias=os-multiple-create, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.265 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=Personality, alias=os-personality, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.266 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=SecurityGroups, alias=os-security-groups, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.266 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=ConfigDrive, alias=os-config-drive, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
2016-06-10 21:14:31.317 577 DEBUG nova.network.neutronv2.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] validate_networks() for [(u'0d415531-a990-4bb2-9b0e-09cf43543559', None, None, None)] validate_networks /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/network/neutronv2/api.py:1200
2016-06-10 21:14:31.318 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] REQ: curl -g -i -X GET http://172.29.236.100:9696/v2.0/networks.json?id=0d415531-a990-4bb2-9b0e-09cf43543559 -H "User-Agent: python-neutronclient" -H "Accept: application/json" -H "X-Auth-Token: {SHA1}63ac1d89b994cb0592b2edcc5f627e77c9c61582" _http_log_request /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/keystoneclient/session.py:198
2016-06-10 21:14:31.354 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] RESP: [200] Date: Sat, 11 Jun 2016 02:14:31 GMT Content-Length: 310 Content-Type: application/json; charset=UTF-8 X-Openstack-Request-Id: req-72b1b96e-1b58-4a14-a8b1-e44937222aff 
2016-06-10 21:14:31.355 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] REQ: curl -g -i -X GET http://172.29.236.100:9696/v2.0/ports.json?tenant_id=7af55b5e15004e1fb99c2303b6a597af -H "User-Agent: python-neutronclient" -H "Accept: application/json" -H "X-Auth-Token: {SHA1}63ac1d89b994cb0592b2edcc5f627e77c9c61582" _http_log_request /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/keystoneclient/session.py:198
2016-06-10 21:14:31.396 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] RESP: [200] Date: Sat, 11 Jun 2016 02:14:31 GMT Content-Length: 13 Content-Type: application/json; charset=UTF-8 X-Openstack-Request-Id: req-df4550ae-d021-4054-b116-34d6d79b7876 
2016-06-10 21:14:31.398 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] REQ: curl -g -i -X GET http://172.29.236.100:9696/v2.0/quotas/7af55b5e15004e1fb99c2303b6a597af.json -H "User-Agent: python-neutronclient" -H "Accept: application/json" -H "X-Auth-Token: {SHA1}63ac1d89b994cb0592b2edcc5f627e77c9c61582" _http_log_request /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/keystoneclient/session.py:198
2016-06-10 21:14:31.409 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] RESP: [200] Date: Sat, 11 Jun 2016 02:14:31 GMT Content-Length: 171 Content-Type: application/json; charset=UTF-8 X-Openstack-Request-Id: req-77c58067-7a7b-4850-baf8-b49f2977f751 
2016-06-10 21:14:31.411 577 DEBUG oslo_concurrency.lockutils [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Acquired semaphore "neutron_admin_auth_token_lock" lock /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/oslo_concurrency/lockutils.py:212
2016-06-10 21:14:31.411 577 DEBUG oslo_concurrency.lockutils [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Releasing semaphore "neutron_admin_auth_token_lock" lock /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/oslo_concurrency/lockutils.py:225
2016-06-10 21:14:31.416 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Getting quotas for project 7af55b5e15004e1fb99c2303b6a597af. Resources: ['metadata_items'] _get_quotas /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:409
2016-06-10 21:14:31.421 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Getting quotas for user 9b73ca1932564ae092b447168eba49f1 and project 7af55b5e15004e1fb99c2303b6a597af. Resources: ['metadata_items'] _get_quotas /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:401
2016-06-10 21:14:31.431 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Reserving resources using context.project_id: 7af55b5e15004e1fb99c2303b6a597af reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:540
2016-06-10 21:14:31.431 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Reserving resources using context.user_id: 9b73ca1932564ae092b447168eba49f1 reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:545
2016-06-10 21:14:31.432 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Attempting to reserve resources for project 7af55b5e15004e1fb99c2303b6a597af and user 9b73ca1932564ae092b447168eba49f1. Deltas: {'instances': 1, 'ram': 512, 'cores': 1} reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:550
2016-06-10 21:14:31.436 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Quota limits for project 7af55b5e15004e1fb99c2303b6a597af: {u'cores': -1, 'project_id': u'7af55b5e15004e1fb99c2303b6a597af', u'ram': -1, u'instances': -1} reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:559
2016-06-10 21:14:31.436 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Getting quotas for project 7af55b5e15004e1fb99c2303b6a597af. Resources: ['instances', 'ram', 'cores'] _get_quotas /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:409
2016-06-10 21:14:31.443 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Quotas for project 7af55b5e15004e1fb99c2303b6a597af after resource sync: {'instances': -1, 'ram': -1, 'cores': -1} reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:565
2016-06-10 21:14:31.444 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Getting quotas for user 9b73ca1932564ae092b447168eba49f1 and project 7af55b5e15004e1fb99c2303b6a597af. Resources: ['instances', 'ram', 'cores'] _get_quotas /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:401
2016-06-10 21:14:31.452 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Quotas for project 7af55b5e15004e1fb99c2303b6a597af and user 9b73ca1932564ae092b447168eba49f1 after resource sync: {'instances': -1, 'ram': -1, 'cores': -1} reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:573
2016-06-10 21:14:31.456 577 DEBUG nova.db.sqlalchemy.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Request is over project quota for resource "instances". Project limit: -1, delta: 1, current total project usage: 0 _calculate_overquota /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/db/sqlalchemy/api.py:3515
2016-06-10 21:14:31.457 577 DEBUG nova.db.sqlalchemy.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Request is over project quota for resource "ram". Project limit: -1, delta: 512, current total project usage: 0 _calculate_overquota /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/db/sqlalchemy/api.py:3515
2016-06-10 21:14:31.457 577 DEBUG nova.db.sqlalchemy.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Request is over project quota for resource "cores". Project limit: -1, delta: 1, current total project usage: 0 _calculate_overquota /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/db/sqlalchemy/api.py:3515
2016-06-10 21:14:31.459 577 DEBUG nova.db.sqlalchemy.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Raise OverQuota exception because: project_quotas: {'instances': -1, 'ram': -1, 'cores': -1}, user_quotas: {'instances': 4, 'ram': 4096, 'cores': 20}, deltas: {'instances': 1, 'ram': 512, 'cores': 1}, overs: ['instances', 'ram', 'cores'], project_usages: {u'instances': {'total': 0, 'reserved': 0, 'in_use': 0}, u'ram': {'total': 0, 'reserved': 0, 'in_use': 0}, u'security_groups': {'total': 1, 'reserved': 0, 'in_use': 1}, u'cores': {'total': 0, 'reserved': 0, 'in_use': 0}}, user_usages: {u'instances': {'total': 0, 'reserved': 0, 'in_use': 0}, u'ram': {'total': 0, 'reserved': 0, 'in_use': 0}, u'security_groups': {'total': 1, 'reserved': 0, 'in_use': 1}, u'cores': {'total': 0, 'reserved': 0, 'in_use': 0}} quota_reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/db/sqlalchemy/api.py:3671
2016-06-10 21:14:31.460 577 DEBUG nova.compute.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] cores, instances, ram quota exceeded for 7af55b5e15004e1fb99c2303b6a597af, tried to run 1 instances. Can only run 4 more instances of this type. _check_num_instances_quota /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/compute/api.py:453
2016-06-10 21:14:31.461 577 INFO nova.api.openstack.wsgi [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] HTTP exception thrown: Quota exceeded for cores, instances, ram: Requested 1, 1, 512, but already used 0, 0, 0 of 20, 4, 4096 cores, instances, ram
2016-06-10 21:14:31.462 577 DEBUG nova.api.openstack.wsgi [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Returning 403 to user: Quota exceeded for cores, instances, ram: Requested 1, 1, 512, but already used 0, 0, 0 of 20, 4, 4096 cores, instances, ram __call__ /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/wsgi.py:1175
2016-06-10 21:14:31.462 577 INFO nova.osapi_compute.wsgi.server [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] 172.29.236.100,172.29.236.100 "POST /v2.1/7af55b5e15004e1fb99c2303b6a597af/servers HTTP/1.1" status: 403 len: 468 time: 0.2087948

** Affects: nova
     Importance: Undecided
         Status: New


** Tags: compute quotas

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1591429

Title:
  User quota not working when project quotas set to unlimited.

Status in OpenStack Compute (nova):
  New

Bug description:
  Description
  ===========
  User is unable to boot an instance when user quota exist and project quota for instance, ram, or cores are set to unlimited(-1).
   

  Steps to reproduce
  ==================

  1. Tenant quotas are set to unlimited for instances,core,and ram.

  root@osad-aio:~# export tenant=$(openstack project list | awk '/support-test/ { print $2 }')
  root@osad-aio:~# export tuser=$(openstack user list | awk '/test-user/ { print $2 }')
  root@osad-aio:~# nova quota-update --instances -1 --cores -1 --ram -1 $tenant

  root@osad-aio:~# nova quota-show --tenant $tenant
  +-----------------------------+-------+
  | Quota                       | Limit |
  +-----------------------------+-------+
  | instances                   | -1    |
  | cores                       | -1    |
  | ram                         | -1    |
  | floating_ips                | 10    |
  | fixed_ips                   | -1    |
  | metadata_items              | 128   |
  | injected_files              | 5     |
  | injected_file_content_bytes | 10240 |
  | injected_file_path_bytes    | 255   |
  | key_pairs                   | 100   |
  | security_groups             | 10    |
  | security_group_rules        | 20    |
  | server_groups               | 10    |
  | server_group_members        | 10    |
  +-----------------------------+-------+

  
  2. User quotas are set for user under tenant.
  root@osad-aio:~# nova quota-update --instances 4 --cores 20 --ram 4096 --user $tuser $tenant

  root@osad-aio:~# nova quota-show --user $tuser --tenant $tenant
  +-----------------------------+-------+
  | Quota                       | Limit |
  +-----------------------------+-------+
  | instances                   | 4     |
  | cores                       | 20    |
  | ram                         | 4096  |
  | floating_ips                | 10    |
  | fixed_ips                   | -1    |
  | metadata_items              | 128   |
  | injected_files              | 5     |
  | injected_file_content_bytes | 10240 |
  | injected_file_path_bytes    | 255   |
  | key_pairs                   | 100   |
  | security_groups             | 10    |
  | security_group_rules        | 20    |
  | server_groups               | 10    |
  | server_group_members        | 10    |
  +-----------------------------+-------+

  
  3. Booting of the instance fails due to quota exceeding.  Additional debugging output below [0]

  root@osad-aio:~# nova boot --security-groups default --image 9fde3d51-05f2-4de8-83e2-2c93f1085194 --nic net-id=0d415531-a990-4bb2-9b0e-09cf43543559 --flavor 1 test-instance
  ERROR (Forbidden): Quota exceeded for cores, instances, ram: Requested 1, 1, 512, but already used 0, 0, 0 of 20, 4, 4096 cores, instances, ram (HTTP 403) (Request-ID: req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72

  
  4. Setting limits instead of unlimited on the project fixes the inability for the user to boot the instance.

  root@osad-aio:~# nova quota-update --instances 65535 --cores 65535
  --ram 65535 $tenant

  root@osad-aio:~# nova quota-show --tenant $tenant
  +-----------------------------+-------+
  | Quota                       | Limit |
  +-----------------------------+-------+
  | instances                   | 65535 |
  | cores                       | 65535 |
  | ram                         | 65535 |
  | floating_ips                | 10    |
  | fixed_ips                   | -1    |
  | metadata_items              | 128   |
  | injected_files              | 5     |
  | injected_file_content_bytes | 10240 |
  | injected_file_path_bytes    | 255   |
  | key_pairs                   | 100   |
  | security_groups             | 10    |
  | security_group_rules        | 20    |
  | server_groups               | 10    |
  | server_group_members        | 10    |
  +-----------------------------+-------

  
  root@osad-aio:~# nova boot --security-groups default --image 9fde3d51-05f2-4de8-83e2-2c93f1085194 --nic net-id=0d415531-a990-4bb2-9b0e-09cf43543559 --flavor 1 test-instance
  +--------------------------------------+-----------------------------------------------+
  | Property                             | Value                                         |
  +--------------------------------------+-----------------------------------------------+
  | OS-DCF:diskConfig                    | MANUAL                                        |
  | OS-EXT-AZ:availability_zone          |                                               |
  | OS-EXT-STS:power_state               | 0                                             |
  | OS-EXT-STS:task_state                | scheduling                                    |
  | OS-EXT-STS:vm_state                  | building                                      |
  | OS-SRV-USG:launched_at               | -                                             |
  | OS-SRV-USG:terminated_at             | -                                             |
  | accessIPv4                           |                                               |
  | accessIPv6                           |                                               |
  | adminPass                            | 58hgCXuyHpsQ                                  |
  | config_drive                         |                                               |
  | created                              | 2016-06-11T02:21:11Z                          |
  | flavor                               | m1.tiny (1)                                   |
  | hostId                               |                                               |
  | id                                   | 39e85e03-fd8b-4965-b2a9-99bea21d634b          |
  | image                                | cirros (9fde3d51-05f2-4de8-83e2-2c93f1085194) |
  | key_name                             | -                                             |
  | metadata                             | {}                                            |
  | name                                 | test-instance                                 |
  | os-extended-volumes:volumes_attached | []                                            |
  | progress                             | 0                                             |
  | security_groups                      | default                                       |
  | status                               | BUILD                                         |
  | tenant_id                            | 7af55b5e15004e1fb99c2303b6a597af              |
  | updated                              | 2016-06-11T02:21:11Z                          |
  | user_id                              | 9b73ca1932564ae092b447168eba49f1              |
  +--------------------------------------+-----------------------------------------------

  
  Expected result
  ===============
  Able to boot an instance with user quotas enabled.

  Actual result
  =============

  
  Environment
  ===========
  1. Exact version of OpenStack you are running. See the following

  Liberty version 12.0.3

  2. Which hypervisor did you use?
  Libvirt + KVM

  2. Which storage type did you use?
  N/A

  3. Which networking type did you use?
  Neutron w/ Linux Bridge


  [0]

  [nova version]
  (nova-12.0.10)root@osad-aio:~# nova-compute --version
  12.0.3

  
  [debug output]

  2016-06-10 21:14:31.259 577 DEBUG nova.api.openstack.wsgi [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Action: 'create', calling method: <bound method ServersController.create of <nova.api.openstack.compute.servers.ServersController object at 0x7fce2fe61190>>, body: {"server": {"name": "test-instance", "imageRef": "9fde3d51-05f2-4de8-83e2-2c93f1085194", "flavorRef": "1", "max_count": 1, "min_count": 1, "networks": [{"uuid": "0d415531-a990-4bb2-9b0e-09cf43543559"}], "security_groups": [{"name": "default"}]}} _process_stack /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/wsgi.py:789
  2016-06-10 21:14:31.261 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=SchedulerHints, alias=os-scheduler-hints, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.261 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=Keypairs, alias=os-keypairs, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.262 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=BlockDeviceMapping, alias=os-block-device-mapping, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.262 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=AccessIPs, alias=os-access-ips, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.263 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=BlockDeviceMappingV1, alias=os-block-device-mapping-v1, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.263 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=DiskConfig, alias=os-disk-config, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.264 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=UserData, alias=os-user-data, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.264 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=AvailabilityZone, alias=os-availability-zone, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.265 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=MultipleCreate, alias=os-multiple-create, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.265 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=Personality, alias=os-personality, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.266 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=SecurityGroups, alias=os-security-groups, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.266 577 DEBUG nova.api.openstack.compute.servers [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Running _create_extension_point for <Extension: name=ConfigDrive, alias=os-config-drive, version=1> _create_extension_point /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py:700
  2016-06-10 21:14:31.317 577 DEBUG nova.network.neutronv2.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] validate_networks() for [(u'0d415531-a990-4bb2-9b0e-09cf43543559', None, None, None)] validate_networks /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/network/neutronv2/api.py:1200
  2016-06-10 21:14:31.318 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] REQ: curl -g -i -X GET http://172.29.236.100:9696/v2.0/networks.json?id=0d415531-a990-4bb2-9b0e-09cf43543559 -H "User-Agent: python-neutronclient" -H "Accept: application/json" -H "X-Auth-Token: {SHA1}63ac1d89b994cb0592b2edcc5f627e77c9c61582" _http_log_request /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/keystoneclient/session.py:198
  2016-06-10 21:14:31.354 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] RESP: [200] Date: Sat, 11 Jun 2016 02:14:31 GMT Content-Length: 310 Content-Type: application/json; charset=UTF-8 X-Openstack-Request-Id: req-72b1b96e-1b58-4a14-a8b1-e44937222aff 
  2016-06-10 21:14:31.355 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] REQ: curl -g -i -X GET http://172.29.236.100:9696/v2.0/ports.json?tenant_id=7af55b5e15004e1fb99c2303b6a597af -H "User-Agent: python-neutronclient" -H "Accept: application/json" -H "X-Auth-Token: {SHA1}63ac1d89b994cb0592b2edcc5f627e77c9c61582" _http_log_request /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/keystoneclient/session.py:198
  2016-06-10 21:14:31.396 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] RESP: [200] Date: Sat, 11 Jun 2016 02:14:31 GMT Content-Length: 13 Content-Type: application/json; charset=UTF-8 X-Openstack-Request-Id: req-df4550ae-d021-4054-b116-34d6d79b7876 
  2016-06-10 21:14:31.398 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] REQ: curl -g -i -X GET http://172.29.236.100:9696/v2.0/quotas/7af55b5e15004e1fb99c2303b6a597af.json -H "User-Agent: python-neutronclient" -H "Accept: application/json" -H "X-Auth-Token: {SHA1}63ac1d89b994cb0592b2edcc5f627e77c9c61582" _http_log_request /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/keystoneclient/session.py:198
  2016-06-10 21:14:31.409 577 DEBUG keystoneclient.session [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] RESP: [200] Date: Sat, 11 Jun 2016 02:14:31 GMT Content-Length: 171 Content-Type: application/json; charset=UTF-8 X-Openstack-Request-Id: req-77c58067-7a7b-4850-baf8-b49f2977f751 
  2016-06-10 21:14:31.411 577 DEBUG oslo_concurrency.lockutils [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Acquired semaphore "neutron_admin_auth_token_lock" lock /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/oslo_concurrency/lockutils.py:212
  2016-06-10 21:14:31.411 577 DEBUG oslo_concurrency.lockutils [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Releasing semaphore "neutron_admin_auth_token_lock" lock /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/oslo_concurrency/lockutils.py:225
  2016-06-10 21:14:31.416 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Getting quotas for project 7af55b5e15004e1fb99c2303b6a597af. Resources: ['metadata_items'] _get_quotas /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:409
  2016-06-10 21:14:31.421 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Getting quotas for user 9b73ca1932564ae092b447168eba49f1 and project 7af55b5e15004e1fb99c2303b6a597af. Resources: ['metadata_items'] _get_quotas /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:401
  2016-06-10 21:14:31.431 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Reserving resources using context.project_id: 7af55b5e15004e1fb99c2303b6a597af reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:540
  2016-06-10 21:14:31.431 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Reserving resources using context.user_id: 9b73ca1932564ae092b447168eba49f1 reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:545
  2016-06-10 21:14:31.432 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Attempting to reserve resources for project 7af55b5e15004e1fb99c2303b6a597af and user 9b73ca1932564ae092b447168eba49f1. Deltas: {'instances': 1, 'ram': 512, 'cores': 1} reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:550
  2016-06-10 21:14:31.436 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Quota limits for project 7af55b5e15004e1fb99c2303b6a597af: {u'cores': -1, 'project_id': u'7af55b5e15004e1fb99c2303b6a597af', u'ram': -1, u'instances': -1} reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:559
  2016-06-10 21:14:31.436 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Getting quotas for project 7af55b5e15004e1fb99c2303b6a597af. Resources: ['instances', 'ram', 'cores'] _get_quotas /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:409
  2016-06-10 21:14:31.443 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Quotas for project 7af55b5e15004e1fb99c2303b6a597af after resource sync: {'instances': -1, 'ram': -1, 'cores': -1} reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:565
  2016-06-10 21:14:31.444 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Getting quotas for user 9b73ca1932564ae092b447168eba49f1 and project 7af55b5e15004e1fb99c2303b6a597af. Resources: ['instances', 'ram', 'cores'] _get_quotas /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:401
  2016-06-10 21:14:31.452 577 DEBUG nova.quota [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Quotas for project 7af55b5e15004e1fb99c2303b6a597af and user 9b73ca1932564ae092b447168eba49f1 after resource sync: {'instances': -1, 'ram': -1, 'cores': -1} reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/quota.py:573
  2016-06-10 21:14:31.456 577 DEBUG nova.db.sqlalchemy.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Request is over project quota for resource "instances". Project limit: -1, delta: 1, current total project usage: 0 _calculate_overquota /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/db/sqlalchemy/api.py:3515
  2016-06-10 21:14:31.457 577 DEBUG nova.db.sqlalchemy.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Request is over project quota for resource "ram". Project limit: -1, delta: 512, current total project usage: 0 _calculate_overquota /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/db/sqlalchemy/api.py:3515
  2016-06-10 21:14:31.457 577 DEBUG nova.db.sqlalchemy.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Request is over project quota for resource "cores". Project limit: -1, delta: 1, current total project usage: 0 _calculate_overquota /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/db/sqlalchemy/api.py:3515
  2016-06-10 21:14:31.459 577 DEBUG nova.db.sqlalchemy.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Raise OverQuota exception because: project_quotas: {'instances': -1, 'ram': -1, 'cores': -1}, user_quotas: {'instances': 4, 'ram': 4096, 'cores': 20}, deltas: {'instances': 1, 'ram': 512, 'cores': 1}, overs: ['instances', 'ram', 'cores'], project_usages: {u'instances': {'total': 0, 'reserved': 0, 'in_use': 0}, u'ram': {'total': 0, 'reserved': 0, 'in_use': 0}, u'security_groups': {'total': 1, 'reserved': 0, 'in_use': 1}, u'cores': {'total': 0, 'reserved': 0, 'in_use': 0}}, user_usages: {u'instances': {'total': 0, 'reserved': 0, 'in_use': 0}, u'ram': {'total': 0, 'reserved': 0, 'in_use': 0}, u'security_groups': {'total': 1, 'reserved': 0, 'in_use': 1}, u'cores': {'total': 0, 'reserved': 0, 'in_use': 0}} quota_reserve /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/db/sqlalchemy/api.py:3671
  2016-06-10 21:14:31.460 577 DEBUG nova.compute.api [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] cores, instances, ram quota exceeded for 7af55b5e15004e1fb99c2303b6a597af, tried to run 1 instances. Can only run 4 more instances of this type. _check_num_instances_quota /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/compute/api.py:453
  2016-06-10 21:14:31.461 577 INFO nova.api.openstack.wsgi [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] HTTP exception thrown: Quota exceeded for cores, instances, ram: Requested 1, 1, 512, but already used 0, 0, 0 of 20, 4, 4096 cores, instances, ram
  2016-06-10 21:14:31.462 577 DEBUG nova.api.openstack.wsgi [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] Returning 403 to user: Quota exceeded for cores, instances, ram: Requested 1, 1, 512, but already used 0, 0, 0 of 20, 4, 4096 cores, instances, ram __call__ /openstack/venvs/nova-12.0.10/lib/python2.7/site-packages/nova/api/openstack/wsgi.py:1175
  2016-06-10 21:14:31.462 577 INFO nova.osapi_compute.wsgi.server [req-27fa978c-6fc5-4f7a-a4e4-558797bd6a72 9b73ca1932564ae092b447168eba49f1 7af55b5e15004e1fb99c2303b6a597af - - -] 172.29.236.100,172.29.236.100 "POST /v2.1/7af55b5e15004e1fb99c2303b6a597af/servers HTTP/1.1" status: 403 len: 468 time: 0.2087948

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1591429/+subscriptions


Follow ups