git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Jeff King <peff@peff.net>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>,
	Scott Batchelor <scott.batchelor@gmail.com>,
	git@vger.kernel.org
Subject: Re: [PATCH] gitk: refresh the index before running diff-files
Date: Mon, 1 Oct 2012 18:32:37 -0400	[thread overview]
Message-ID: <20121001223237.GC12496@sigill.intra.peff.net> (raw)
In-Reply-To: <20120930203458.GA31365@elie.Belkin>

On Sun, Sep 30, 2012 at 01:34:58PM -0700, Jonathan Nieder wrote:

> Jeff King wrote:
> > On Sun, Sep 30, 2012 at 10:05:27AM +1000, Paul Mackerras wrote:
> 
> >> Unfortunately this will wait for the git update-index command to
> >> complete, making the GUI unresponsive while it executes, and that can
> >> take minutes on a large repository (e.g. the linux kernel) on a
> >> machine with a slow disk and a cold disk cache.  We will need to make
> >> the git update-index execute asynchronously.
> >
> > Good point. We're getting out of my very limited tcl cargo-culting
> > skills now, so I'll let somebody more clueful do that fix.
> 
> You might find the following patch and discussion entertaining:
> 
>   http://thread.gmane.org/gmane.comp.version-control.git/144182
> 
> Not my itch, but it was fun to write back then. ;-)

Not really my itch either, which is why I'm trying to dump the tcl work
on somebody else. :) For what it's worth, your patch from that thread
looks like a sane approach.

I don't buy the "gitk should be read-only" argument from that thread. I
think we decided a while back[1] that the stat cache is not really a
user-visible modification; you're not updating the index in any
meaningful way that impacts the user's workflow, but merely refreshing
our cache of what is in the filesystem.  That may have performance
implications (which is why we do not do it in all commands by default),
but it really is a cache, and updating it should be no different than
updating gitk.cache (i.e., do it if we can, but do not complain if we
are in a read-only repository).

-Peff

[1] I did not track down the threads, but I consider this resolved by
    all of the discussion that led to "git diff" refreshing (and saving)
    the index rather than printing patch-less stat-dirty entries. The
    original argument against refreshing was that the stat-dirtiness was
    somehow interesting to users, but I think experience has shown that
    people are happy to have it happen magically behind the scenes.

  reply	other threads:[~2012-10-01 22:32 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-28 18:55 Git diff-file bug? Scott Batchelor
2012-09-28 20:23 ` Jeff King
2012-09-28 20:50   ` [PATCH] gitk: refresh the index before running diff-files Jeff King
2012-09-28 21:40     ` Junio C Hamano
2012-09-28 22:11     ` Andreas Schwab
2012-09-28 22:31       ` Jeff King
2012-09-28 23:02         ` Junio C Hamano
2012-09-28 23:04           ` Jeff King
2012-09-28 23:18             ` Junio C Hamano
2012-09-28 23:20           ` Andreas Schwab
2012-09-30  0:05     ` Paul Mackerras
2012-09-30  1:42       ` Jeff King
2012-09-30 20:34         ` Jonathan Nieder
2012-10-01 22:32           ` Jeff King [this message]
2012-10-01 22:54             ` Junio C Hamano
2012-09-28 20:40 ` Git diff-file bug? Junio C Hamano
2012-10-03  8:04   ` Scott Batchelor
2012-10-03 11:58     ` Drew Northup

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=20121001223237.GC12496@sigill.intra.peff.net \
    --to=peff@peff.net \
    --cc=git@vger.kernel.org \
    --cc=jrnieder@gmail.com \
    --cc=paulus@samba.org \
    --cc=scott.batchelor@gmail.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.
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).