diff options
author | Zane Bitter <zbitter@redhat.com> | 2017-11-17 14:14:32 -0500 |
---|---|---|
committer | Dirk Mueller <dirk@dmllr.de> | 2019-01-04 19:02:09 +0100 |
commit | da8972d5420054065b62e100e3cee33a52a491c3 (patch) | |
tree | a6959136fef36df3cbca39797d270add397a3cb7 | |
parent | 7524e615b2b735b26da44a45c356de801eb21bec (diff) | |
download | heat-da8972d5420054065b62e100e3cee33a52a491c3.tar.gz |
Retry on DB deadlock when updating resource
Updating a row in the DB using UPDATE...WHERE... seems to be prone to
deadlocks. We already fixed added retries for updates of the Stack table
(bug 1578615); do the same with the Resource table.
Depends-On: https://review.openstack.org/#/c/622853/
Change-Id: I3928f1acc3c354711a27523215784a8cf8767581
Closes-Bug: #1732969
(cherry picked from commit e919b723bc6f6604d3165d143de51715fbf057e7)
-rw-r--r-- | heat/db/sqlalchemy/api.py | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/heat/db/sqlalchemy/api.py b/heat/db/sqlalchemy/api.py index 50bfc37ae..05584e868 100644 --- a/heat/db/sqlalchemy/api.py +++ b/heat/db/sqlalchemy/api.py @@ -249,6 +249,8 @@ def _add_atomic_key_to_values(values, atomic_key): values['atomic_key'] = atomic_key + 1 +@oslo_db_api.wrap_db_retry(max_retries=3, retry_on_deadlock=True, + retry_interval=0.5, inc_retry_interval=True) def resource_update(context, resource_id, values, atomic_key, expected_engine_id=None): session = context.session |