[issue41761] multiprocessing.Queue prevents program exit when containing a reasonable amount of data

2020-09-17 Thread Dominik Schmid


Change by Dominik Schmid :


--
nosy: +davin, pitrou

___
Python tracker 
<https://bugs.python.org/issue41761>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41761] multiprocessing.Queue prevents program exit when containing a reasonable amount of data

2020-09-11 Thread Dominik Schmid


New submission from Dominik Schmid :

Reproduction steps: run the attached queue_busted.py

expected result: 
"done." is printed and the program terminates.

actual result:
"done." is printed and the program does not terminate.

Documentation link for your convenience:
https://docs.python.org/3.7/library/multiprocessing.html#multiprocessing.Queue.close

The lowest to trigger the bug seems to be 1639 42's in the queue.
If I put numpy.array([42]) into the queue instead of 42, I need much fewer 
items to trigger the bug.
When q.close() is called explicitly, it always terminates but sometimes prints 
a BrokenPipeError.

Reproduced on windows (Python 3.7.2) and Debian (Python 2.7.16).

--
components: Library (Lib)
files: queue_busted.py
messages: 376716
nosy: Dominik Schmid
priority: normal
severity: normal
status: open
title: multiprocessing.Queue prevents program exit when containing a reasonable 
amount of data
type: behavior
versions: Python 3.7
Added file: https://bugs.python.org/file49451/queue_busted.py

___
Python tracker 
<https://bugs.python.org/issue41761>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue25794] __setattr__ does not always overload operators

2015-12-04 Thread Dominik Schmid

New submission from Dominik Schmid:

While implementing my own Integer class that keeps track of when operations are 
applied I noticed that setattr had a strange behaviour when I tried to wrap 
operator functions.

When the attribute string had a different id to its literal it failed to 
overload the operator.
Are we doing a 'is' rather than a '==' somewhere in setattr?


expected result: 
139723705431168a.__add__(b)= (5)a+b= (5)
139723705431168a.__add__(b)= (5)a+b= (5)
139723704361584a.__add__(b)= (5)a+b= (5)


actual result:
139723705431168a.__add__(b)= (5)a+b= (5)
139723705431168a.__add__(b)= (5)a+b= (5)
139723704361584a.__add__(b)= (5)a+b=
Traceback (most recent call last):
  File "/home/dom/Documents/leastOps/bug.py", line 41, in 
testSetattr(funcName3)
  File "/home/dom/Documents/leastOps/bug.py", line 28, in testSetattr
print '   a+b=', a+b
TypeError: unsupported operand type(s) for +: 'Integer' and 'Integer'



version:
2.7.10 (default, Oct 14 2015, 16:09:02) 
[GCC 5.2.1 20151010]
ubuntu 14.10

--
components: Interpreter Core
files: bug.py
messages: 255853
nosy: Dominik Schmid
priority: normal
severity: normal
status: open
title: __setattr__ does not always overload operators
type: behavior
versions: Python 2.7
Added file: http://bugs.python.org/file41234/bug.py

___
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue25794>
___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com