clone performance of experimental new http client library.

Dominik Psenner dpsenner at gmail.com
Thu Oct 20 06:30:58 CDT 2011


>>> Does all this mean that it is likely the new library will perform no
>>> worse than the old one in Mercurial 2? The point of the library was
>>> to speed things up right?
>>
>> Comparing svn 1.6.15-neon and 1.7.0-neon (which implements HTTPv2)
>> shows that the 1.7 version eliminated more than half of the needed
>> http requests [1]. I guess there's still some speedup potential for
>> mercurial.
>
>You must be talking about something else? David is talking about using
>the new HTTP client we have in Mercurial.
>
>The big goal of that client is to let the client send a "Expect:
>100-Continue" header to the server on HTTP push and the server can then
>reply early to ask for authentication, if needed.

Oh, sorry for the noise. My brain got mixed up between the subversion and
mercurial releases. :-)

>With the normal Python HTTP code, clients upload everything *twice* when
>pushing over HTTP: the first upload is discarded because it is
>unauthenticated.

Which means that - once the code has been patched against the performance
bottlenecks - the speedup should be around 2.0 (two times faster) for large
repositories?



More information about the Mercurial-devel mailing list