[New-bugs-announce] [issue34563] invalid assert on big output of multiprocessing.Process
Oleksandr Buchkovskyi
report at bugs.python.org
Sat Sep 1 12:52:43 EDT 2018
New submission from Oleksandr Buchkovskyi <olex.buchkovsky at gmail.com>:
the bug is reproduced on big multiprocessing.Process output
when the size of the output gets bigger than signed int the value becomes negative, thus
```
assert left > 0
```
in multiprocessing/connection.py:337 raises an exception like the following
```
Traceback (most recent call last):
File "D:\GitHub\cpython\lib\threading.py", line 917, in _bootstrap_inner
self.run()
File "D:\GitHub\cpython\lib\threading.py", line 865, in run
self._target(*self._args, **self._kwargs)
File "D:\GitHub\cpython\lib\multiprocessing\pool.py", line 470, in _handle_results
task = get()
File "D:\GitHub\cpython\lib\multiprocessing\connection.py", line 250, in recv
buf = self._recv_bytes()
File "D:\GitHub\cpython\lib\multiprocessing\connection.py", line 318, in _recv_bytes
return self._get_more_data(ov, maxsize)
File "D:\GitHub\cpython\lib\multiprocessing\connection.py", line 337, in _get_more_data
assert left > 0
AssertionError
```
this assert looks invalid in this case because in C code the left value is DWORD (unsigned long), which cannot be negative by definition.
----------
components: Library (Lib)
files: invalid_assert_bug_reproduce.py
messages: 324465
nosy: Oleksandr Buchkovskyi
priority: normal
severity: normal
status: open
title: invalid assert on big output of multiprocessing.Process
type: crash
versions: Python 3.6
Added file: https://bugs.python.org/file47778/invalid_assert_bug_reproduce.py
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue34563>
_______________________________________
More information about the New-bugs-announce
mailing list