| Summary: | wget dead slow | ||
|---|---|---|---|
| Product: | Busybox | Reporter: | uli <mz1510-uni01> |
| Component: | Networking | Assignee: | unassigned |
| Status: | RESOLVED FIXED | ||
| Severity: | major | CC: | busybox-cvs |
| Priority: | P5 | ||
| Version: | 1.18.x | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Linux | ||
| Host: | Target: | ||
| Build: | |||
| Attachments: |
log file for busybox 1.17.2
log file for busybox 1.18.3 |
||
|
Description
uli
2011-02-09 13:53:38 UTC
Can you produce strace logs of wget downloads using both 1.18.1 and 1.17.2 with these options: strace -tt -T -oLOG busybox wget http://127.0.0.1/10M_of_zero_bytes -O/dev/null I did some tests and it looks like tiny 512-byte buffer is a culprit. Newer version does additional poll() and time() calls around every read/write, that made overhead more visible in it. Try this simplistic fix: http://busybox.net/downloads/fixes-1.18.3/busybox-1.18.3-wget.patch I did a better fix in git. Created attachment 2941 [details]
log file for busybox 1.17.2
Created attachment 2947 [details]
log file for busybox 1.18.3
problem persists after patch, log files were taken with a server to which I've got a minimum of 100Mb bandwidth, again virtualbox, now running ubuntu, for reason of development environment. did further tests, behaviour depends on server chosen and file that's fetched. With just fetching some index.html of some server somewhere in the world it always gets stuck (see logfiles above, only for 1.18.x, not 1.17.x), with large zero files so far no issue were seen, with just some old 10MB file I happened to have on disk there were hangups seen occasionally with 1.18.1, not so with the patched 1.18.3 yet. The slowdown seems always related to some poll / timeout message in the logfile. Conclusion: The problem that actually triggered my report might have vanished in the patched 1.18.3 version. However, the fact that for any web server I tried to access by its web address only (ie. expecting to fetch some index file) the timeout occurs, and that's for 1.18.x, not so for 1.17.2, might perhaps indicate some remaining issue? ... can't unfortunately debug any further, sorry... Ok, I see where we have a different problem. We don't send "Connection: close". I updated busybox-1.18.3-wget.patch, please try it again (In reply to comment #7) > Ok, I see where we have a different problem. We don't send "Connection: close". > I updated busybox-1.18.3-wget.patch, please try it again issue seems fixed now, no more problems seen. thanks... Fixed, fix will be in 1.18.4 and 1.19.x |