[tahoe-lafs-trac-stream] [tahoe-lafs] #1381: EINTR from communication with subprocess in allmydata/util/iputil.py _query
tahoe-lafs
trac at tahoe-lafs.org
Sun May 29 08:33:32 PDT 2011
#1381: EINTR from communication with subprocess in allmydata/util/iputil.py _query
------------------------------+------------------------------
Reporter: davidsarah | Owner: davidsarah
Type: defect | Status: new
Priority: major | Milestone: 1.9.0
Component: code-network | Version: 1.8.2
Resolution: | Keywords: iputil heisenbug
Launchpad Bug: |
------------------------------+------------------------------
Comment (by davidsarah):
Replying to [comment:4 zooko]:
> Should we work-around this by catching {{{OSError}}} with {{{errno==4}}}
and retrying the subprocess?
Yes, I believe so. We probably shouldn't retry forever, so let's retry 10
times. The {{{try/except}}} should cover
[source:src/allmydata/util/iputil.py at 4971#L236 lines 236 and 237 of
iputil.py].
BTW, rather than 4 we should use {{{errno.EINTR}}} (I think this is
defined on all platforms, even though {{{EINTR}}} is only really relevant
on Unix).
Should {{{_query}}} return {{{[]}}} (i.e. no addresses) if the subprocess
fails? Oh, I see that issue is #854 ('what to do when you can't find any
IP address for yourself').
--
Ticket URL: <http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1381#comment:5>
tahoe-lafs <http://tahoe-lafs.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list