New submission from John Szakmeister: I discovered this issue while trying to track down why our upcoming release for Nose 1.3.0 was deadlocking under Ubuntu 12.04 with Python 3.3. It turns out that the read() was being interrupted leaving data in the subprocess's output buffers, which ultimately means the subprocess is blocked. Since the thread was exiting, and the read was never retried, we were left in deadlock.
The attached patch fixes the issue. It wraps the read call with _eintr_retry_call() around the read operation in _readerthread(). ---------- components: Library (Lib) files: fix-subprocess-deadlock.patch keywords: patch messages: 183584 nosy: jszakmeister priority: normal severity: normal status: open title: subprocess deadlock when read() is interrupted type: behavior versions: Python 3.3 Added file: http://bugs.python.org/file29323/fix-subprocess-deadlock.patch _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue17367> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com