Network glitches costing 15 minutes a pop
John Arbash Meinel
john at arbash-meinel.com
Sat Aug 16 04:29:29 BST 2008
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Mark Hammond wrote:
> Vincent writes:
>
...
> 0c3aa0.six: Expected a boundary
> |(squid/2.6.STABLE18:496108C51A70127AB163F74011CD1F5F) line, got ''
>
> Note that I still got the exact same timeout behaviour, but in this case bzr
> didn't recover from the error and the operation failed (pycurl manages to
> retry until completion if you are patient enough)
>
> My ubuntu 8.04 VM also shows identical behaviour, both with libcurl and with
> httplib - the symptoms are identical as for the 2 Windows boxes I've tried
> recently (one Vista64, the other XP32).
>
> All in all it is looking like my network - and quite probably that
> transparent proxy. Thanks for your help so far and let me know if I can do
> anything else to help track this down.
>
> Cheers,
>
> Mark
So that signature *specifically* is indicative of the squid proxy problem. If
you had given me that traceback, I would have pointed you directly to the
known proxy bug. Which as Robert mentioned has been fixed in Squid.
https://bugs.edge.launchpad.net/bzr/+bug/198646
There is also a way to patch bzr to not provoke the bug in squid (which is
part of that bug discussion).
Basically, bzr issues a range request (for, say, bytes 1,000,000 ->
1,000,100), and it then prefixes the header of the file (bytes 0 - 20 or so).
And the problem is that Squid then sees a request starting at 0, and decides
to download the *whole* file, and serve the range request out of cache. Only
it fails to properly do either. I haven't specifically seen it ever try again
and work, so I'm a bit surprised that pycurl eventually succeeds. Perhaps it
ignores the ranges internally?
Anyway, you can patch bzr to split up those requests. So instead of making:
Ranges: 0-10,100000-1000100
It does *two* requests. We don't do that by default because it doubles your
latency to make 2 requests.
John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFIpkmZJdeBCYSNAAMRAlsfAJ9O2ewruxh3hjQ4rizzmXZArMe3GQCgwk1u
t4TrpMQS+3GKYheDs9uVwbg=
=+jqk
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list