diff --git a/Lib/multiprocessing/pool.py b/Lib/multiprocessing/pool.py --- a/Lib/multiprocessing/pool.py +++ b/Lib/multiprocessing/pool.py @@ -690,6 +690,9 @@ item = self._items.popleft() except IndexError: if self._index == self._length: + for success, value in self._unsorted.values(): + if not success and isinstance(value, BaseException): + raise value raise StopIteration raise TimeoutError