From 4b2fd0d9fba680a33dac0a628fcff7681d93b1f2 Mon Sep 17 00:00:00 2001 From: mprahl Date: Dec 01 2019 16:56:57 +0000 Subject: Reraise the exception in the correct location in utils.py:retry --- diff --git a/freshmaker/utils.py b/freshmaker/utils.py index e057454..0d7dde4 100644 --- a/freshmaker/utils.py +++ b/freshmaker/utils.py @@ -157,11 +157,17 @@ def retry(timeout=conf.net_timeout, interval=conf.net_retry_interval, wait_on=Ex def inner(*args, **kwargs): start = time.time() while True: - if (time.time() - start) >= timeout: - raise # This re-raises the last exception. try: return function(*args, **kwargs) except wait_on as e: + if time.time() - start >= timeout: + if logger is not None: + logger.exception( + "The timeout of %d seconds was exceeded after one or more retry " + "attempts", + timeout, + ) + raise if logger is not None: logger.warning("Exception %r raised from %r. Retry in %rs", e, function, interval)