git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jakub Narebski <jnareb@gmail.com>
To: "Shawn O. Pearce" <spearce@spearce.org>
Cc: Andreas Ericsson <ae@op5.se>, Scott Chacon <schacon@gmail.com>,
	git list <git@vger.kernel.org>
Subject: Re: Mercurial on BigTable
Date: Fri, 12 Jun 2009 09:14:14 +0200	[thread overview]
Message-ID: <200906120914.16185.jnareb@gmail.com> (raw)
In-Reply-To: <20090612034645.GO16497@spearce.org>

On Fri, 12 June 2009, Shawn O. Pearce wrote:
> Jakub Narebski <jnareb@gmail.com> wrote:
> > Andreas Ericsson <ae@op5.se> writes:
> > 
> > > I'm more curious as to why they didn't choose git. The only explanation
> > > that was actually true is that hg works well over HTTP 
> > 
> > Well, Google App Engine was in Python, so it follows that the crew
> > would have it easier understanding Mercurial code (which is written in
> > Python with parts in C for performance), and in moving it to BigTable.
> 
> This has nothing to do with Google AppEngine.  GAE has CPU and
> bandwidth limitations in place that make running a source code server
> like Hg on it impossible.  E.g. the maximum size you could download
> in a single HTTP request was 1 MB, now its up to 10 MB (IIRC).
> The Hg hosting runs in a different cluster than the GAE hosting does,
> and are managed by different teams.
> 
> > Adding Java to Gogle App Engine is, as far as I know, fairly recent;
> 
> True, yes, GAE Java support is fairly new.

I didn't wanted to say that support for Mercurial (or other DVCS) in
Google Code had anything to do with Google AppEngine.  Rather I wanted
to imply that what might have mattered when choosing between Mercurial
and Git was the fact that there was large pool of people who are 
proficient in Python (and later in Java) _and_ with web application(s).

But I don't quite see how lack of good over HTTP support should matter;
if they are rewriting Mercurial[1] (and earlier Subversion) to use 
BigTable, couldn't they add "smart" HTTP protocol support to Git 
(which I think would be easier)?

[1] Mercurial is not AGPLv3 licensed...

> 
> > additionally JGit (git implementation in Java) is not yet full
> > implementation.
> 
> JGit implements sufficient parts of Git to be a full server, and
> could power a hosting site... indeed it powers Gerrit Code Review,
> which some companies do use as their entire Git server solution,
> rather than e.g. Gitosis.

By "not full implementation" I meant here that as far as I know JGit
doesn't have yet support for _creating_ (as opposed to simply reusing)
deltas in packfiles.


P.S. On the other hand, Mercurial support for multiple branches is
not so good[2], and the way tags got implemented seems iffy to me...

[2] http://schacon.github.com/2008/11/24/on-mercurial.html

-- 
Jakub Narebski
Poland

  reply	other threads:[~2009-06-12  7:14 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-10 19:15 Mercurial on BigTable Scott Chacon
2009-06-10 19:23 ` Sverre Rabbelier
2009-06-11  2:02 ` Andreas Ericsson
2009-06-11  8:24   ` Jakub Narebski
2009-06-12  3:46     ` Shawn O. Pearce
2009-06-12  7:14       ` Jakub Narebski [this message]
2009-06-11 14:37   ` Sitaram Chamarty
2009-06-12  4:14 ` Shawn O. Pearce

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=200906120914.16185.jnareb@gmail.com \
    --to=jnareb@gmail.com \
    --cc=ae@op5.se \
    --cc=git@vger.kernel.org \
    --cc=schacon@gmail.com \
    --cc=spearce@spearce.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 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).