diff --git a/apps/lock_manager/decorators.py b/apps/lock_manager/decorators.py index c98a7ae1c9..aa365925bc 100644 --- a/apps/lock_manager/decorators.py +++ b/apps/lock_manager/decorators.py @@ -19,15 +19,13 @@ def simple_locking(lock_id, expiration=None): except LockError: # Unable to acquire lock pass - except Exception: - # Unhandled error, release lock - lock.release() - raise else: # Lock acquired, proceed normally, release lock afterwards logger.debug('acquired lock: %s' % lock_id) result = function(*args, **kwargs) lock.release() return result + finally: + lock.release() return wraps(function)(wrapper) return inner_decorator