#12483 NORM 13.1.0: XO-4 C1 problem executing yum/curl Python code
Zarro Boogs per Child
bugtracker at laptop.org
Mon Jan 21 11:05:51 EST 2013
#12483: XO-4 C1 problem executing yum/curl Python code
------------------------------------+---------------------------------------
Reporter: dsd | Owner: dsd
Type: defect | Status: new
Priority: normal | Milestone: 13.1.0
Component: not assigned | Version: not specified
Resolution: | Keywords:
Next_action: diagnose | Verified: 0
Deployment_affected: | Blockedby:
Blocking: |
------------------------------------+---------------------------------------
Comment(by dsd):
Adding a meaningless print in the yumRepo.py code causes the issue to go
away:
{{{
ug = URLGrabber(progress_obj = self.callback,
**ugopts)
#print url
result = ug.urlgrab(url, local, text="%s/metalink" %
self.ui_id)
}}}
Running yum or the above test case under gdb avoids the issue.
I tried to find a standalone Python snippet to reproduce the problem (i.e.
one not relying on urlgrabber) but failed. I rolled the urlgrabber source
code into the test app and started stripping it down, but as I strip it
down more and more, the frequency of the problem decreases. It seems that
the more layers we strip away, the less frequent the issue occurs. With
yum it happens every time, stripping down yum into the urlgrabber test app
above it happens about half the time, stripping down urlgrabber it happens
even less frequently, etc.
Looking at the failing case with strace shows that DNS queries are being
sent to Manuel's local router, but poll() never indicates that a response
is received, and eventually it times out and gives up. Examining with
tcpdump agrees: in the failing case, the query packets are sent (and
retried), and no response is received from the router. In the working case
(print statement added), responses are quickly received. I checked the
query packets in both cases, there are no apparent differences that would
explain the different behaviour (the only differences in the packets are
sequence numbers and checksums).
Changing DNS server to 4.2.2.2 and 8.8.8.8 makes no difference.
--
Ticket URL: <http://dev.laptop.org/ticket/12483#comment:1>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system
More information about the Bugs
mailing list