Try to get around the tag deadlock by using a select for update.

This commit is contained in:
Jake Moshenko 2015-02-24 17:17:55 -05:00
parent afe6be0daf
commit d8a34427ec

View file

@ -1803,7 +1803,7 @@ def create_or_update_tag(namespace_name, repository_name, tag_name,
query = _tag_alive(RepositoryTag
.select()
.where(RepositoryTag.repository == repo, RepositoryTag.name == tag_name))
tag = query.get()
tag = db_for_update(query).get()
tag.lifetime_end_ts = now_ts
tag.save()
except RepositoryTag.DoesNotExist: