Fix allocate_and_associate DB deadlock

In testing we saw a DB deadlock in allocate_and_associate.
This patch corrects that with a DB retry wrapper.

Change-Id: I20572505e448f9b7ff6314b5167cc4c519c445fb
Story: 2005893
Task: 33751
This commit is contained in:
Michael Johnson 2019-06-14 09:39:47 -07:00
parent 620c19804c
commit 0eaab450c1
2 changed files with 5 additions and 0 deletions

View File

@ -1137,6 +1137,7 @@ class AmphoraRepository(BaseRepository):
id=amphora_id).first()
load_balancer.amphorae.append(amphora)
@oslo_db_api.wrap_db_retry(max_retries=5, retry_on_deadlock=True)
def allocate_and_associate(self, session, load_balancer_id):
"""Allocate an amphora for a load balancer.

View File

@ -0,0 +1,4 @@
---
fixes:
- |
Fixes a potential DB deadlock in allocate_and_associate found in testing.