diff --git a/gunicorn/arbiter.py b/gunicorn/arbiter.py index df2616f3..c34fff45 100644 --- a/gunicorn/arbiter.py +++ b/gunicorn/arbiter.py @@ -305,7 +305,15 @@ class Arbiter(object): """ if self.WORKERS: worker_values = list(self.WORKERS.values()) - oldest = min(w.tmp.last_update() for w in worker_values) + + oldest = time.time() + for w in worker_values: + try: + if w.tmp.last_update() < oldest: + oldest = w.tmp.last_update() + except ValueError: + pass + timeout = self.timeout - (time.time() - oldest) # The timeout can be reached, so don't wait for a negative value timeout = max(timeout, 1.0)