Re: Request: timeout option for remote operations, esp. "git fetch"
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:59:14
"H. Peter Anvin" [off-list ref] writes:
On 11/10/2013 12:17 PM, Eric Wong wrote:quoted
"H. Peter Anvin" [off-list ref] wrote:quoted
When a remote server is unavailable or very slow, some git commands can stall out indefinitely. It would be a very good thing if remote commands -- but especially git fetch -- could be given a timeout.We've had SO_KEEPALIVE on git and ssh transports since e47a8583 (2011-12-06) SO_KEEPALIVE for http was added recently (a15d069a) and will be in git 1.8.5 Do you want a shorter timeout for slow (but still alive) servers?Yes; note that SO_KEEPALIVE only guarantees that the server is alive at the TCP socket level. If the server is overloaded but technically alive it may still make no meaningful forward progress.
Which means that your original wish may not be granted with SO_KEEPALIVE at all, no? I was wondering if you wanted a forced timeout based on alarm(2), something similar to what you added to git-daemon in 960deccb (git-daemon: timeout, eliminate double DWIM, 2005-10-19).