[darcs-users] state of HTTP pipelining in Darcs?

Dmitry Kurochkin dmitry.kurochkin at gmail.com
Tue Jul 13 19:11:35 UTC 2010


On Tue, 13 Jul 2010 15:33:01 +0100, E.Y.Kow at brighton.ac.uk wrote:
> On Thu, Jun 24, 2010 at 18:21:46 +0400, Dmitry Kurochkin wrote:
> > As I understand the code is already there and working. Did anyone
> > compared darcs get times?
> 
> Some informal tests on the darcs darcs repo (2010-06-28):
> 
>   lazy get (--no-cache) goes up from 20s to 3 minutes;
>   however, full get goes from 40 minutes to 3 minutes
> 

Extremly cool!

> So this is really promising!  There's a regression with lazy gets,
> which Alexey has been working on, hopefully with some results.
> 
> In the meantime, I've filed http://bugs.darcs.net/issue1889 so that
> we don't accidentally release Darcs 2.5 with the regression.
> 

IMHO this is a very nice feature. It's worth a little release delay.

> Note that there's also another potential perceived regression in that
> we get very little feedback when downloading packs.  Even if it's
> actually much faster in reality, folks may *think* it's slower.
> 

Reporting from curl may be tricky. I would release with out it anyway.

> I think we're going to need some help with http://bugs.darcs.net/issue1306
> 

I think there are 2 options:

* Calling from curl into haskell to do progress reporting. Using printf
  directly may produce some messed output, e.g. when curl debugging is
  on lines printed from Haskell and C are mixed.

* Reworking curl support. With packs we can probably drop pipelining
  with not much performance harm (needs to be checked). Then we can use
  curl simple interface. That would make code simpler, allow to get rid
  of a separate thread (there was a bug about it), and let us use
  Haskell curl bindings.

Regards,
  Dmitry

> Thanks!
> 
> -- 
> Eric Kow <http://www.nltg.brighton.ac.uk/home/Eric.Kow>
> For a faster response, please try +44 (0)1273 64 2905.
Non-text part: application/pgp-signature


More information about the darcs-users mailing list