From: David Lang <david@lang.hm>
To: David Kastrup <dak@gnu.org>
Cc: Jeff King <peff@peff.net>, Shawn Pearce <spearce@spearce.org>,
Michael Haggerty <mhagger@alum.mit.edu>,
git discussion list <git@vger.kernel.org>,
Vicent Marti <tanoku@gmail.com>,
Brad King <brad.king@kitware.com>,
Johan Herland <johan@herland.net>
Subject: Re: [RFC/WIP] Pluggable reference backends
Date: Mon, 10 Mar 2014 09:28:10 -0700 (PDT) [thread overview]
Message-ID: <alpine.DEB.2.02.1403100923110.16215@nftneq.ynat.uz> (raw)
In-Reply-To: <87k3c2820l.fsf@fencepost.gnu.org>
On Mon, 10 Mar 2014, David Kastrup wrote:
> Jeff King <peff@peff.net> writes:
>
>> On Mon, Mar 10, 2014 at 07:30:45AM -0700, Shawn Pearce wrote:
>>
>>>> * Store references in a SQLite database, to get correct transaction
>>>> handling.
>>>
>>> No to SQLLite in git-core. Using it from JGit requires building
>>> SQLLite and a JNI wrapper, which makes JGit significantly less
>>> portable. I know SQLLite is pretty amazing, but implementing
>>> compatibility with it from JGit will be a big nightmare for us.
>>
>> That seems like a poor reason not to implement a pluggable feature for
>> git-core. If we implement it, then a site using only git-core can take
>> advantage of it. Sites with JGit cannot, and would use a different
>> pluggable storage mechanism that's supported by both. But if we don't
>> implement, it hurts people using only git-core, and it does not help
>> sites using JGit at all.
>
> Of course, the basic premise for this feature is "let's assume that our
> file and/or operating system suck at providing file system functionality
> at file name granularity". There have been two historically approaches
> to that problem that are not independent: a) use Linux b) kick Linus.
As a note, if this is done properly, it could allow for plugins that connect to
the underlying storage system (similar to the Facebook Mecurial change)
Even for those who don't have the $$$$$ storage arrays, there may be other
storage specific hacks that can be done to detect that files haven't changed.
For example, with btrfs and you compile into a different directory thatn your
source, you may be able to detect that things didn't change by the fact that the
filesystem didn't have to do a rewrite of the parent node.
David Lang
next prev parent reply other threads:[~2014-03-10 16:28 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-10 11:00 [RFC/WIP] Pluggable reference backends Michael Haggerty
2014-03-10 11:44 ` Johan Herland
2014-03-10 14:30 ` Shawn Pearce
2014-03-10 15:51 ` Max Horn
2014-03-10 15:52 ` Jeff King
2014-03-10 16:14 ` David Kastrup
2014-03-10 16:28 ` David Lang [this message]
2014-03-10 19:42 ` Jeff King
2014-03-10 19:56 ` David Kastrup
2014-03-10 17:46 ` Junio C Hamano
2014-03-10 17:56 ` Jeff King
2014-03-10 21:07 ` Michael Haggerty
2014-03-11 2:39 ` Shawn Pearce
2014-03-12 10:26 ` egit vs. git behaviour (was: [RFC/WIP] Pluggable reference backends) Andreas Krey
2014-03-12 16:48 ` Shawn Pearce
2014-03-11 10:56 ` [RFC/WIP] Pluggable reference backends Karsten Blees
2014-03-12 11:43 ` Michael Haggerty
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=alpine.DEB.2.02.1403100923110.16215@nftneq.ynat.uz \
--to=david@lang.hm \
--cc=brad.king@kitware.com \
--cc=dak@gnu.org \
--cc=git@vger.kernel.org \
--cc=johan@herland.net \
--cc=mhagger@alum.mit.edu \
--cc=peff@peff.net \
--cc=spearce@spearce.org \
--cc=tanoku@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).