From: Sascha Cunz <sascha-ml@babbelbox.org>
To: Jeff King <peff@peff.net>
Cc: "Shawn Pearce" <spearce@spearce.org>,
"Junio C Hamano" <gitster@pobox.com>,
"Ævar Arnfjörð" <avarab@gmail.com>,
"Git Mailing List" <git@vger.kernel.org>
Subject: Re: upload-pack is slow with lots of refs
Date: Thu, 04 Oct 2012 23:52:13 +0200 [thread overview]
Message-ID: <7939878.c2fCDAx1ds@blacky> (raw)
In-Reply-To: <20121003201316.GA4484@sigill.intra.peff.net>
Am Mittwoch, 3. Oktober 2012, 16:13:16 schrieb Jeff King:
> On Wed, Oct 03, 2012 at 12:41:38PM -0700, Shawn O. Pearce wrote:
> > > Out of curiosity, how are you thinking about triggering such a new
> > > behavior in a backwards-compatible way? Invoke git-upload-pack2, and
> > > fall back to reconnecting to start git-upload-pack if it fails?
> >
> > Basically, yes. New clients connect for git-upload-pack2. Over git://
> > the remote peer will just close the TCP socket with no messages. The
> > client can fallback to git-upload-pack and try again. Over SSH a
> > similar thing will happen in the sense there is no data output from
> > the remote side, so the client can try again. This has the downside of
> > authentication twice over SSH, which may prompt for a password twice.
> > But the user can get out of this by setting remote.NAME.uploadpack =
> > git-upload-pack and thus force the Git client to use the current
> > protocol if they have a new client and must continue to work over SSH
> > with an old server, and don't use an ssh-agent.
>
> It's a shame that we have to reestablish the TCP or ssh connection to do
> the retry. The password thing is annoying, but also it just wastes a
> round-trip. It means we'd probably want to default the v2 probe to off
> (and let the user turn it on for a specific remote) until v2 is much
> more common than v1. Otherwise everyone pays the price.
Would it be possible to use this workflow:
- Every client connects per default to v1
- If server is capable of v2, it sends a flag along with the usual response
(A v1 server will obviously not send that flag)
- If client is also capable of v2 and gets the flag, it enables v2 for
just that remote (probably unless the user said, "i never want to")
- Next time the client connects to that remote it will use v2.
I'm not sure, if this is possible, since I think to remember that I have read
in the Documentation folder something along the line: Capabilities announced
from the server mean "I want you to use exactly these flags".
Sascha
next prev parent reply other threads:[~2012-10-04 22:17 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-03 12:36 upload-pack is slow with lots of refs Ævar Arnfjörð Bjarmason
2012-10-03 13:06 ` Nguyen Thai Ngoc Duy
2012-10-03 18:03 ` Jeff King
2012-10-03 18:53 ` Junio C Hamano
2012-10-03 18:55 ` Jeff King
2012-10-03 19:41 ` Shawn Pearce
2012-10-03 20:13 ` Jeff King
2012-10-04 21:52 ` Sascha Cunz [this message]
2012-10-05 0:20 ` Jeff King
2012-10-05 6:24 ` Johannes Sixt
2012-10-05 16:57 ` Shawn Pearce
2012-10-08 15:05 ` Johannes Sixt
2012-10-09 6:46 ` Shawn Pearce
2012-10-09 20:30 ` Johannes Sixt
2012-10-09 20:46 ` Johannes Sixt
2012-10-03 20:16 ` Ævar Arnfjörð Bjarmason
2012-10-03 21:20 ` Jeff King
2012-10-03 22:15 ` Ævar Arnfjörð Bjarmason
2012-10-03 23:15 ` Jeff King
2012-10-03 23:54 ` Ævar Arnfjörð Bjarmason
2012-10-04 7:56 ` [PATCH 0/4] optimizing upload-pack ref peeling Jeff King
2012-10-04 7:58 ` [PATCH 1/4] peel_ref: use faster deref_tag_noverify Jeff King
2012-10-04 18:24 ` Junio C Hamano
2012-10-04 8:00 ` [PATCH 2/4] peel_ref: do not return a null sha1 Jeff King
2012-10-04 18:32 ` Junio C Hamano
2012-10-04 8:02 ` [PATCH 3/4] peel_ref: check object type before loading Jeff King
2012-10-04 19:06 ` Junio C Hamano
2012-10-04 19:41 ` Jeff King
2012-10-04 20:41 ` Junio C Hamano
2012-10-04 21:59 ` Jeff King
2012-10-04 8:03 ` [PATCH 4/4] upload-pack: use peel_ref for ref advertisements Jeff King
2012-10-04 8:04 ` [PATCH 0/4] optimizing upload-pack ref peeling Jeff King
2012-10-04 9:01 ` Ævar Arnfjörð Bjarmason
2012-10-04 12:14 ` Nazri Ramliy
2012-10-03 22:32 ` upload-pack is slow with lots of refs Ævar Arnfjörð Bjarmason
2012-10-03 23:21 ` Jeff King
2012-10-03 23:47 ` Ævar Arnfjörð Bjarmason
2012-10-03 19:13 ` Junio C Hamano
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7939878.c2fCDAx1ds@blacky \
--to=sascha-ml@babbelbox.org \
--cc=avarab@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=peff@peff.net \
--cc=spearce@spearce.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.
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 NNTP newsgroup(s).