[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Random serf checkout failures

From: Justin Erenkrantz <justin_at_erenkrantz.com>
Date: Tue, 6 Nov 2012 20:30:42 -0500

On Tue, Nov 6, 2012 at 4:41 PM, Ivan Zhakov <ivan_at_visualsvn.com> wrote:
> Another problem is how serf reads data from network in case of
> multiple connections: it reads data from one connection until EAGAIN.
> But if data comes from network really fast (from local server for
> example) it continue reading data from this connection, without
> reading data from other connection! Which leads time out them.
>
> See outgoing.c:read_from_connection()

Hmm. I'm not sure if there's an easy answer for this while keeping
ra_serf single-threaded. Perhaps keep a track of how much we've read
in a single connection and give up reading that connection for a bit
if we've read 100KB or some such to see if there are other connections
with responses ready to read.

But, then again, here in 2012, I'd probably fight a lot harder to make
the checkout logic run across multiple network threads as that would
spread the SSL or gzip loads across multiple cores. -- justin
Received on 2012-11-07 02:31:14 CET

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.