[New-bugs-announce] [issue39477] multiprocessing Pool maxtasksperchild=0 raises exception with endless traceback
Tomáš Jeziorský
report at bugs.python.org
Tue Jan 28 08:04:56 EST 2020
New submission from Tomáš Jeziorský <Galileo.Galilei at seznam.cz>:
The following code is expected to fail:
import multiprocessing
def f(x):
return x
if __name__ == '__main__':
with multiprocessing.Pool(2, maxtasksperchild=0) as pool:
pool.map(f, range(3))
since it uses a wrong value of the 'maxtasksperchild' parameter. I expect it to raise a ValueError but instead it starts to fill the stderr with practically endless traceback:
Process ForkPoolWorker-2:
Process ForkPoolWorker-1:
Traceback (most recent call last):
File "/usr/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/usr/lib/python3.6/multiprocessing/pool.py", line 95, in worker
assert maxtasks is None or (type(maxtasks) == int and maxtasks > 0)
Traceback (most recent call last):
AssertionError
File "/usr/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
self.run()
File "/usr/lib/python3.6/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/usr/lib/python3.6/multiprocessing/pool.py", line 95, in worker
assert maxtasks is None or (type(maxtasks) == int and maxtasks > 0)
AssertionError
Process ForkPoolWorker-4:
Process ForkPoolWorker-3:
...
I don't think this is expected behavior.
Tested with Python 3.6.9 on Ubuntu 18.04.3.
----------
messages: 360872
nosy: jeyekomon
priority: normal
severity: normal
status: open
title: multiprocessing Pool maxtasksperchild=0 raises exception with endless traceback
type: behavior
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue39477>
_______________________________________
More information about the New-bugs-announce
mailing list