Subject: Re: Mercurial on BigTable

From: "Shawn O. Pearce" <[email-masked]>
Date: Thu, 11 Jun 2009 20:46:45 -0700

Jakub Narebski <[email-masked]> wrote:
> Andreas Ericsson <[email-masked]> 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.

> 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.
 
-- 
Shawn.