git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Junio C Hamano <junkio@cox.net>
To: Darrin Thompson <darrint@progeny.com>
Cc: git@vger.kernel.org
Subject: Re: Dump http servers still slow?
Date: Fri, 29 Jul 2005 19:11:45 -0700	[thread overview]
Message-ID: <7vmzo56o0u.fsf@assigned-by-dhcp.cox.net> (raw)
In-Reply-To: 1122645821.4263.6.camel@localhost.localdomain

Darrin Thompson <darrint@progeny.com> writes:

> Ok... so lets check my assumptions:
>
> 1. Pack files should reduce the number of http round trips.
> 2. What I'm seeing when I check out mainline git is the acquisition of a
> single large pack, then 600+ more recent objects. Better than before,
> but still hundreds of round trips.
> 3. If I wanted to further speed up the initial checkout on my own
> repositories I could frequently repack my most recent few hundred
> objects.
> 4. If curl had pipelining then less pack management would be needed.

All true.  Another possibility is to make multiple requests in
parallel; if curl does not do pipelining, either switch to
something that does, or have more then one process using curl.

The dumb server preparation creates three files, two of which is
currently used by clone (one is list of packs, the other is list
of branches and tags).  The third one is commit ancestry
information.  The commit walker could be taught to read it to
figure out what commits it still needs to fetch without waiting
for the commit being retrieved to be parsed.

Sorry, I am not planning to write that part myself.

One potential low hanging fruit is that even for cloning via
git:// URL we _might_ be better off starting with the dumb
server protocol; get the list of statically prepared packs and
obtain them upfront before starting the clone-pack/upload-pack
protocol pair.

  parent reply	other threads:[~2005-07-30  2:18 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-07-28 21:00 Dump http servers still slow? Darrin Thompson
2005-07-29  2:24 ` Junio C Hamano
2005-07-29 14:03   ` Darrin Thompson
2005-07-29 14:48     ` Ryan Anderson
2005-07-29 14:57       ` Darrin Thompson
2005-07-29 15:08         ` Radoslaw AstralStorm Szkodzinski
2005-07-29 15:26           ` Darrin Thompson
2005-07-30  2:11     ` Junio C Hamano [this message]
2005-07-31  6:51     ` Junio C Hamano
2005-08-01 14:03       ` Darrin Thompson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: http://vger.kernel.org/majordomo-info.html

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7vmzo56o0u.fsf@assigned-by-dhcp.cox.net \
    --to=junkio@cox.net \
    --cc=darrint@progeny.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).