From 933af3fdac4d7d8dd8bf2b419c87b9dc27d69af8 Mon Sep 17 00:00:00 2001 From: Kevin Benton Date: Fri, 16 Sep 2016 11:39:14 -0600 Subject: [PATCH] Add to rally quotas to handle worst case quota race Quoting the quota devref: """ For a reservation to be successful, the total amount of resources requested, plus the total amount of resources reserved, plus the total amount of resources already stored in the database should not exceed the project's quota limit. """ This means that in the absolute worst case scenario with 20 concurrent workers, 19 could have made reservations, committed resources, but not yet cleared their reservation. Because of the outstanding reservation and the resources created by the 19 workers, they will all be double-counted until their reservation is cleared (or it expires). This adjusts the rally scenarios to handle the double-count for concurrency. Related-Bug: #1623390 Change-Id: I4808a92e7e6067aeeb62fc3b3d7f7ac71b179c44 --- rally-jobs/neutron-neutron.yaml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/rally-jobs/neutron-neutron.yaml b/rally-jobs/neutron-neutron.yaml index 87c9d60c91a..762b8034e71 100644 --- a/rally-jobs/neutron-neutron.yaml +++ b/rally-jobs/neutron-neutron.yaml @@ -11,7 +11,11 @@ users_per_tenant: 1 quotas: neutron: - network: 100 + # worst case is other 19 writers have created + # resources, but quota reservation hasn't cleared + # yet on any of them. This value could be 100 + # without concurrency. see bug/1623390 + network: 119 sla: max_avg_duration_per_atomic: neutron.list_networks: 15 # reduce as perf is fixed @@ -83,7 +87,9 @@ network: -1 subnet: -1 router: -1 - port: 4040 # (ports per network + 1 dhcp) * times + # ((ports per net + 1 dhcp) * times) + (concurrency-1) + # see bug/1623390 for concurrency explanation + port: 4059 sla: max_avg_duration_per_atomic: neutron.list_ports: 15 # reduce as perf is fixed