Skip to content

Commit

Permalink
Merge pull request #3200 from mytardis/mt-409-dfo-does-not-exist
Browse files Browse the repository at this point in the history
[MT-409] Do not raise DoesNotExist error if object is missing
  • Loading branch information
dyakhnov committed Aug 9, 2021
2 parents 2e4e051 + 17d4290 commit 5186bf6
Showing 1 changed file with 11 additions and 4 deletions.
15 changes: 11 additions & 4 deletions tardis/tardis_portal/tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -216,10 +216,17 @@ def dfo_verify(dfo_id, *args, **kwargs):
# Get dfo locked for write (to prevent concurrent actions)
if kwargs.pop('transaction_lock', False):
with transaction.atomic():
dfo = DataFileObject.objects.select_for_update().get(id=dfo_id)
return dfo.verify(*args, **kwargs)
dfo = DataFileObject.objects.get(id=dfo_id)
return dfo.verify(*args, **kwargs)
try:
dfo = DataFileObject.objects.select_for_update().get(id=dfo_id)
return dfo.verify(*args, **kwargs)
except DataFileObject.DoesNotExist:
pass
try:
dfo = DataFileObject.objects.get(id=dfo_id)
return dfo.verify(*args, **kwargs)
except DataFileObject.DoesNotExist:
pass
return False


@tardis_app.task(name='tardis_portal.clear_sessions', ignore_result=True)
Expand Down

0 comments on commit 5186bf6

Please sign in to comment.