On Fri, Dec 02, 2016 at 05:50:06PM +0100, Didier Roche wrote:
> However, as you can see in https://bugs.launchpad.net/bugs/1643893, I
> can still reproduce pretty easily here this kind of error (nework
> dropping and snapd disconnecting). While curl or wget can cope with the
> download as expected.

The last time I saw a Go program failing to download something from
another host, and dying in the same spot repeatably, it was because the
Go library authors didn't have EAGAIN (or was it EINTR?) errno handled
correctly everywhere in the libraries.

This was diagnosed by using 'strace' on the failing command and noticing
that a read() or recv() or recvmsg() or somoething similar wasn't retried
on EAGAIN. I don't know how the Go programmer in question found the
corresponding Go code to manipulate but I'd start by looking for read()
or recv() or recvmsg() system calls without EAGAIN error handling within
two lines or something.

Thanks

Attachment: signature.asc
Description: PGP signature

-- 
Snapcraft mailing list
[email protected]
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/snapcraft

Reply via email to