From: Robin Rosenberg <robin.rosenberg@dewire.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: Thomas Rast <trast@student.ethz.ch>,
Thomas Gummerer <t.gummerer@gmail.com>,
git@vger.kernel.org, mhagger@alum.mit.edu, pclouds@gmail.com,
JGit Developers list <jgit-dev@eclipse.org>
Subject: Re: [GSoC] Designing a faster index format - Progress report week 13
Date: Tue, 24 Jul 2012 00:29:49 +0200 [thread overview]
Message-ID: <500DD05D.8030708@dewire.com> (raw)
In-Reply-To: <7vr4s3pkqr.fsf@alter.siamese.dyndns.org>
Junio C Hamano skrev 2012-07-22 23.08:
> Thomas Rast <trast@student.ethz.ch> writes:
>
>> Hum, I'm a bit lost now.
>>
>> What is the status quo? I take it JGit does not have any of ctime, dev,
>> ino etc., and either leaves the existing value or puts a 0....
>> an argument in favor of splitting stat_crc into its fields again?
>
> A difference is that JGit already has such code, and we would be
> adding a burden to do so yet again. It also may not just be JGit,
> but anything that wants to be "compatible" with systems whose
> filesystem interface does not give enough data by omitting fields
> the current index pays attention to.
>
> It isn't really a discussion about splitting again, but more about
> not squishing them into a new field in the first place---IIUC, even
> outside Windows, ctime is already problematic on some systems where
> background processes muck with extended attributes Git does not pay
> attention to. If the patch makes us lose the ability to selectively
> ignore changes to certain fields (e.g. changes to dev and ino are
> noticed but ctime are ignored) by squishing them into one new field,
> wouldn't removing them without adding such a useless field a simpler
> way to go?
I wasnt't thinking of splitting, but now I read it again, I do think
it should split. Having size accessible is a good thing, and even better
if it a 64-bit value so we don't have the modulo-4G problem when looking
at it. Current size is 4G + 33 bytes, index says 33. Did the
file change or not?
Having access to size make the need for actually
invoking the racy git logic and comparing file content less likely.
As for ctime it is accessible in Java7, though everyone aren't using it
and JGit code has to run on Java5. An idea is to make an optional
component, but that doesn't make ctime available everywhere.
-- robin
next prev parent reply other threads:[~2012-07-23 22:30 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-16 20:33 [GSoC] Designing a faster index format - Progress report week 13 Thomas Gummerer
2012-07-16 20:46 ` Junio C Hamano
2012-07-17 8:21 ` Thomas Gummerer
2012-07-17 8:24 ` Thomas Gummerer
2012-07-22 15:22 ` Robin Rosenberg
2012-07-22 18:52 ` Junio C Hamano
2012-07-22 19:43 ` Thomas Rast
2012-07-22 21:08 ` Junio C Hamano
2012-07-23 22:29 ` Robin Rosenberg [this message]
2012-07-24 11:54 ` Thomas Rast
2012-07-24 16:58 ` Junio C Hamano
2012-07-25 6:44 ` Thomas Rast
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=500DD05D.8030708@dewire.com \
--to=robin.rosenberg@dewire.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=jgit-dev@eclipse.org \
--cc=mhagger@alum.mit.edu \
--cc=pclouds@gmail.com \
--cc=t.gummerer@gmail.com \
--cc=trast@student.ethz.ch \
/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).