summaryrefslogtreecommitdiffstats
path: root/nova
diff options
context:
space:
mode:
authorChris Behrens <cbehrens@codestud.com>2013-06-21 03:41:54 +0000
committerChris Behrens <cbehrens@codestud.com>2013-06-21 03:41:54 +0000
commitc0ca847286b88f37e3b4cb6b394fced4b60ed06f (patch)
tree83255e7f8096d76b43510f01c4d5d49716850237 /nova
parent022bd8d6c16a1a06a3996f1fa827bc17b4272af7 (diff)
downloadnova-c0ca847286b88f37e3b4cb6b394fced4b60ed06f.tar.gz
nova-c0ca847286b88f37e3b4cb6b394fced4b60ed06f.tar.xz
nova-c0ca847286b88f37e3b4cb6b394fced4b60ed06f.zip
Retry quota_reserve on DBDeadlock
quota_reserve() can raise DBDeadlock... so this adds the decorator that retries the transaction. Fixes bug 1193199 Change-Id: Id632360372b21f3e75a2af50153eb18cc2025390
Diffstat (limited to 'nova')
-rw-r--r--nova/db/sqlalchemy/api.py1
1 files changed, 1 insertions, 0 deletions
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
index fd79ae215..faece8375 100644
--- a/nova/db/sqlalchemy/api.py
+++ b/nova/db/sqlalchemy/api.py
@@ -2788,6 +2788,7 @@ def _get_quota_usages(context, session, project_id):
@require_context
+@_retry_on_deadlock
def quota_reserve(context, resources, quotas, deltas, expire,
until_refresh, max_age, project_id=None):
elevated = context.elevated()