All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff King <peff@peff.net>
To: git@vger.kernel.org
Subject: [PATCH 0/3] avoid duplicate .have lines
Date: Thu, 19 May 2011 17:32:32 -0400	[thread overview]
Message-ID: <20110519213231.GA29702@sigill.intra.peff.net> (raw)

When receiving a push, we advertise ref tips from any alternate
repositories, in case that helps the client send a smaller pack. Since
these refs don't actually exist in the destination repository, we don't
transmit the real ref names, but instead use the pseudo-ref ".have".

If your alternate has a large number of duplicate refs (for example,
because it is aggregating objects from many related repositories, some
of which will have the same tags and branch tips), then we will send
each ".have $sha1" line multiple times. This is a pointless waste of
bandwidth, as we are simply repeating the same fact to the client over
and over.

This series eliminates duplicate .have lines on push (we don't need to
do so during fetch; see 3/3 for details).

  [1/3]: refactor refs_from_alternate_cb to allow passing extra data
  [2/3]: bisect: refactor sha1_array into a generic sha1 list
  [3/3]: receive-pack: eliminate duplicate .have refs

-Peff

             reply	other threads:[~2011-05-19 21:32 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-19 21:32 Jeff King [this message]
2011-05-19 21:33 ` [PATCH 1/3] refactor refs_from_alternate_cb to allow passing extra data Jeff King
2011-05-19 21:34 ` [PATCH 2/3] bisect: refactor sha1_array into a generic sha1 list Jeff King
2011-05-20  0:17   ` Thiago Farina
2011-05-20  7:47     ` Jeff King
2011-05-20 17:14       ` Junio C Hamano
2011-05-23 21:53         ` Jeff King
2011-05-19 21:34 ` [PATCH 3/3] receive-pack: eliminate duplicate .have refs Jeff King
2011-05-20  3:06   ` Junio C Hamano
2011-05-20  7:42     ` Jeff King
2011-05-20 17:06       ` 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=20110519213231.GA29702@sigill.intra.peff.net \
    --to=peff@peff.net \
    --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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.