git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff King <peff@peff.net>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: Re: What's cooking in git.git (Jul 2010, #05; Wed, 28)
Date: Fri, 30 Jul 2010 14:37:09 -0400	[thread overview]
Message-ID: <20100730183709.GC18544@coredump.intra.peff.net> (raw)
In-Reply-To: <7vvd7zuecv.fsf@alter.siamese.dyndns.org>

On Wed, Jul 28, 2010 at 09:00:16PM -0700, Junio C Hamano wrote:

> --------------------------------------------------
> [Stalled -- would discard unless there are some movements soon]
> [...]
> * jk/tag-contains (2010-07-05) 4 commits
>  - Why is "git tag --contains" so slow?
>  - default core.clockskew variable to one day
>  - limit "contains" traversals based on commit timestamp
>  - tag: speed up --contains calculation

What do we want to do with this?

The first patch by itself produces a pretty big speedup for Ted's case,
and does not impact correctness.  However, it does do a mindless
depth-first search, so there are cases where it can be slower than the
current code (basically, if you never have to go to the roots for your
tagset, then my code will be slower, as it will almost certainly go to
the roots, but it will do so only one time for the whole set, instead of
potentially once per tag).

The second patch by itself is harmless, as the user has to turn it
on explicitly. And the amount of code is quite small, so even if most
people don't use it, I don't think it is a problem.

The third one is where we start defaulting things to "assume no more
than 1 day of clock skew by default", which can cause incorrect answers
in the face of skew.

The fourth is just an illustrative patch for per-repo skew detection.

So if the tradeoff for patch 1 is acceptable, we can merge the first
two. If the tradeoff in patch 3 is acceptable, then we can merge up to
patch 3. The fourth one should be thrown out either way. I can work up a
"detect clock skew on clone and gc" patch based on it if we want to go
that way.

-Peff

  reply	other threads:[~2010-07-30 18:37 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-29  4:00 What's cooking in git.git (Jul 2010, #05; Wed, 28) Junio C Hamano
2010-07-30 18:37 ` Jeff King [this message]
2010-07-31  6:07   ` jk/tag-contains (Re: What's cooking in git.git (Jul 2010, #05; Wed, 28)) Jonathan Nieder
2010-07-31 12:33     ` Jeff King
2010-08-02  4:04       ` Junio C Hamano
2010-08-02 20:02         ` Jonathan Nieder
2010-08-02 20:08           ` Matthieu Moy
2010-08-02 20:19             ` jk/tag-contains Jonathan Nieder
2010-08-02 22:38               ` jk/tag-contains Junio C Hamano
2010-08-05 17:56         ` jk/tag-contains (Re: What's cooking in git.git (Jul 2010, #05; Wed, 28)) Jeff King
2010-08-05 18:22           ` Junio C Hamano
2010-08-05 19:35             ` Jeff King

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=20100730183709.GC18544@coredump.intra.peff.net \
    --to=peff@peff.net \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    /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).