This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Bus error when calling .poll() on a closed Connection from multiprocessing.Pipe()
Type: Stage:
Components: Extension Modules Versions: Python 2.6
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: jnoller Nosy List: amacleod, benjamin.peterson, jnoller, mallyvai
Priority: high Keywords:

Created on 2009-03-26 19:08 by amacleod, last changed 2022-04-11 14:56 by admin. This issue is now closed.

Messages (6)
msg84197 - (view) Author: Allister MacLeod (amacleod) Date: 2009-03-26 19:08
Python 2.6.1 (r261:67515, Mar 26 2009, 14:44:39) 
[GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from multiprocessing import Pipe
>>> a, b = Pipe()
>>> a.close()
>>> a.poll()
Bus error

amacleod@cthulhu:~$ uname -a
Linux cthulhu 2.6.24-23-generic #1 SMP Mon Jan 26 01:04:16 UTC 2009
x86_64 GNU/Linux


I'm running Ubuntu 8.04 LTS, and just installed Python 2.6.1, compiling
from source.
msg84200 - (view) Author: Vaibhav Mallya (mallyvai) Date: 2009-03-26 19:23
Python 2.6.1 (r261:67515, Mar 22 2009, 05:39:39) 
[GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from multiprocessing import Pipe
>>> a, b = Pipe()
>>> a.close()
>>> a.poll()
Segmentation fault

Seems like this should raise an exception.

uname -a:
Linux mememy 2.6.24-23-generic #1 SMP Thu Feb 5 15:00:25 UTC 2009 i686
GNU/Linux

Compiled Python 2.6.1 from source.
msg84202 - (view) Author: Jesse Noller (jnoller) * (Python committer) Date: 2009-03-26 19:35
See also:

http://svn.python.org/view?view=rev&revision=68768
http://bugs.python.org/issue3311

This was checked into trunk, I don't know if it was merged to 2.6.1
msg84205 - (view) Author: Jesse Noller (jnoller) * (Python committer) Date: 2009-03-26 19:43
OS/X, Python Trunk:

>>> from multiprocessing import Pipe
>>> a, b = Pipe()
>>> a.close()
>>> a.poll()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IOError: handle out of range in select()
>>> 

2.6.1 Does not have the fix (I can segfault it here too). Ben, are we 
planning a 2.6.2?
msg84206 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2009-03-26 19:47
2009/3/26 Jesse Noller <report@bugs.python.org>:
> 2.6.1 Does not have the fix (I can segfault it here too). Ben, are we
> planning a 2.6.2?

Yes, I think around 3.1's release, but you'll have to ask Barry for sure.
msg84573 - (view) Author: Jesse Noller (jnoller) * (Python committer) Date: 2009-03-30 16:11
Merged back in CL 70721 on 26 maint
History
Date User Action Args
2022-04-11 14:56:46adminsetgithub: 49820
2009-03-30 16:11:45jnollersetstatus: open -> closed
resolution: fixed
messages: + msg84573
2009-03-26 19:47:46benjamin.petersonsetmessages: + msg84206
2009-03-26 19:43:57jnollersetnosy: + benjamin.peterson
messages: + msg84205
2009-03-26 19:35:55jnollersetmessages: + msg84202
2009-03-26 19:25:19benjamin.petersonsetpriority: high
assignee: jnoller

nosy: + jnoller
2009-03-26 19:23:24mallyvaisetnosy: + mallyvai
messages: + msg84200
components: + Extension Modules, - Library (Lib)
2009-03-26 19:08:50amacleodcreate