On Sat, Feb 13, 2021 at 04:50:10PM +0100, Branko Čibej wrote: > On 13.02.2021 15:32, Evgeny Kotkov wrote: > > My attempt to fix this is by making checkout stream data to both pristine > > and > > the (projected) working file, so that the actual install would then happen > > as > > just an atomic rename. Since we now never stop reading from the connection, > > the timeouts should no longer be an issue. The new approach also has > > several > > nice properties, such as not having to re-read the pristine files, not > > interfering with the network-level buffering, TCP slow starts, and etc. > > I see that it reduces the amount of both read and write I/O during all > > checkouts, which should give a mild overall increase of how fast the > > checkouts work. > > I like this concept very much indeed.
Agreed, yes! I believe I've seen reports of connections timing out during checkout/update, which weren't understood and couldn't be solved in other ways than bumping up server-side limits. This might explain what was going on there. Thanks Evgeny!