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.

Author gregory.p.smith
Recipients Gary.Miguel, asvetlov, gregory.p.smith, jcon, mark.dickinson, pitrou, python-dev, vstinner
Date 2013-02-01.21:19:52
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1359753592.47.0.596839254604.issue12268@psf.upfronthosting.co.za>
In-reply-to
Content
it was easier to just take care of auditing the write calls as part of this given the code change was directly related to it.

On Python 2.7 most of the write calls in the builtin file object (Objects/fileobject.c) rather than the new io module use the libc fwrite() call which, in linux man pages at least, is non-specific about what happens on EINTR (does it retry internally or does it return the number of bytes written so far?).  Those could well abort leading to an error.

Setting up a testcase fo to confirm that with is painful (time consuming) so I can't claim the non io module based write's do not still have an EINTR issue on 2.7.

Workaround: Use the io module instead of the builtin open() or file() calls in Python 2.7.

If someone can confirm that with a test case, it'd make another good issue to open.

As for the writev comment... go ahead. :)
History
Date User Action Args
2013-02-01 21:19:52gregory.p.smithsetrecipients: + gregory.p.smith, mark.dickinson, pitrou, vstinner, asvetlov, python-dev, jcon, Gary.Miguel
2013-02-01 21:19:52gregory.p.smithsetmessageid: <1359753592.47.0.596839254604.issue12268@psf.upfronthosting.co.za>
2013-02-01 21:19:52gregory.p.smithlinkissue12268 messages
2013-02-01 21:19:52gregory.p.smithcreate