Return-Path: Delivered-To: apmail-hadoop-hbase-dev-archive@minotaur.apache.org Received: (qmail 13287 invoked from network); 28 Jan 2010 23:09:27 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 28 Jan 2010 23:09:27 -0000 Received: (qmail 10953 invoked by uid 500); 28 Jan 2010 23:09:26 -0000 Delivered-To: apmail-hadoop-hbase-dev-archive@hadoop.apache.org Received: (qmail 10902 invoked by uid 500); 28 Jan 2010 23:09:26 -0000 Mailing-List: contact hbase-dev-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: hbase-dev@hadoop.apache.org Delivered-To: mailing list hbase-dev@hadoop.apache.org Received: (qmail 10884 invoked by uid 99); 28 Jan 2010 23:09:26 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 28 Jan 2010 23:09:26 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of jsensarma@gmail.com designates 209.85.217.215 as permitted sender) Received: from [209.85.217.215] (HELO mail-gx0-f215.google.com) (209.85.217.215) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 28 Jan 2010 23:09:17 +0000 Received: by gxk7 with SMTP id 7so1473829gxk.12 for ; Thu, 28 Jan 2010 15:08:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=zoCGa2mRTj9OIKcciFLSygtF1G6+W8Z+aLhd8E5fqRs=; b=mZnDKLluOMmmk+0qcSA+LZEWzqOx0u1mNt+8IiO8pWdNO0uGcBjtJQt8Ik4mT96fY2 djntKwWS1qbgNOXmEmk4lsLIPq64am+yMcNFFcBIhkXCizUaGSH8utQaI//oOAjevPyv NxjmSQ5yl6Ara94FJrm3/wiPmlNES2QL7JNB4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=xBDisIS3hjEjiQkNZ/euC70LH6s2/mSX9RoGT1UKGwsgGoeVdIiAE+nfutbZd5MhWG QdgcwR3tKp8x+vLmbzDCq6U3tfOw1HkEs+N8os2sYUvzktUsSu6EjwBeLcBsqbdU6vsq CzTAGqTeHbDGzkCykZ6eYXUKz7nuxMSsnESy0= MIME-Version: 1.0 Received: by 10.150.130.36 with SMTP id c36mr665533ybd.34.1264720136533; Thu, 28 Jan 2010 15:08:56 -0800 (PST) In-Reply-To: <78568af11001281435l782926e5g4c180668ae0b7f8c@mail.gmail.com> References: <7c962aed1001281238g2c49d660pf47d23fe90432886@mail.gmail.com> <78568af11001281242i3419dda8ke7fc082d980df14c@mail.gmail.com> <4aa34eb71001281427j69768786o755bc931ebf72245@mail.gmail.com> <78568af11001281435l782926e5g4c180668ae0b7f8c@mail.gmail.com> Date: Thu, 28 Jan 2010 15:08:56 -0800 Message-ID: Subject: Re: Discussion: Move contribs out of hbase? From: Joydeep Sarma To: hbase-dev@hadoop.apache.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable fwiw - i agree with Dhruba's take. i can't imagine (for example) hadoop shipping without hadoop-streaming (which is contrib). and it's awesome that hadoop changes that break streaming are caught early and often. it makes sense this analog doesn't apply to all contrib projects - perhaps they shouldn't be in contrib to begin with? alternatively - to extend Dhruba's idea - one could break up contrib projects into those that are critical (like streaming would be to hadoop and i imagine the replication stuff would be to hbase) - and those that are non-critical (and not build these by default). the only reason to have non-critical contrib projects in the codebase seems to be to give young/new projects exposure. i am not sure whether this is a good enough reason - perhaps those with some historical perspective have better idea on this. On Thu, Jan 28, 2010 at 2:35 PM, Ryan Rawson wrote: > Part of the problem with contrib is fixing the deeper problems during > major version changes (eg: new file format in 0.20) requires > specialized knowledge that only the contrib author has. Then they must > write a patch, submit it to a hbase committer, etc. =A0If the contrib > was in a non-ASF repo, the author could fix it much faster. > > That's my theory at least? > > On Thu, Jan 28, 2010 at 2:27 PM, Dhruba Borthakur wrot= e: >> Hi stack, >> >> I have seen this issue crop up in the HDFS =A0repository too. >> >> The issue that you have brought up is that code changes to core sometime= s >> needs lots of changes to contrib to make it compile. This is a big probl= em, >> especially when all developers are not intricately familiar with each an= d >> every contrib module. However, the big plus is that when a HBase release= is >> made, it has all the contrib modules in it, and it makes it easier for a >> user to start using any of those contrib modules right away. Can we get = the >> best of both worlds if we do something like this: >> >> =A0Contribs are not first-class citizens. The build script can be setup = to >> ignore build failures in contrib modules. The hope is that when a releas= e is >> about to be cut, contrib owners will submit fixes to any build problems = if >> they want their contrib to be shipped as part of the Hbase release. will >> this solve your problem? >> >> thanks, >> dhruba >> >> >> >> On Thu, Jan 28, 2010 at 12:42 PM, Ryan Rawson wrote= : >> >>> +1 >>> >>> I think when we are ready, we should publish the replication as a >>> contrib up on github. I really like github, its way better than any >>> other system I've seen (in part due to git of course). >>> >>> I do like the notion of officially released contribs that are included >>> at specific version numbers with the hbase release. Hbase core 0.21.0 >>> with TH, ITH at version 0.1 or whatever. >>> >>> -ryan >>> >>> On Thu, Jan 28, 2010 at 12:38 PM, Stack wrote: >>> > I'd like to start a discussion on moving src/contrib out of hbase. >>> > Keep reading if you have an opinion. >>> > >>> > I'd like to suggest that we undo the notion of hbase contribs for the >>> > following reasons: >>> > >>> > + In my experience, they present a friction on changes to core as any >>> > significant core change tends to ripple down into the contribs whethe= r >>> > its code or infrastructure/build changes. =A0Usually what happens the= n >>> > is a non-expert in the contrib code is making edits -- often radical >>> > -- to code they are not completely up on and are a little frustrated >>> > that they have to do it. =A0Bad. >>> > + A few of our contribs are maintained by non-committers. =A0This mea= ns >>> > it takes a committers time getting in updates. =A0The owner is at mer= cy >>> > of the committer making wanted changes. =A0The committer is consumed >>> > reviewing and making update. =A0This indirection hurts at both ends (= We >>> > could discuss making contrib owners committers on their contrib only >>> > but that'd be a bit of bureaucratic nightmare and a burden on the >>> > hadoop pmc to vote on granting access to a subprojects, contrib. =A0I= ts >>> > tough enough getting hadoop pmc to vote on hbase committers. =A0There= is >>> > no precedent in other project, to my knowledge). >>> > + Contribs and core evolve at different rates. =A0They should not be >>> > constrained by core release schedule (or the opposite, core should no= t >>> > be held up because fixes in contrib are wanting). >>> > >>> > I suggest that current contribs be moved out of hbase up to standalon= e >>> > github or google code projects (witness how hbql does it). =A0Previou= s >>> > to our move to Ivy (and possibly soon, Maven), asking contribs be >>> > standalone was a pain as they'd have to check in hbase jars and all o= f >>> > dependencies and then move these forward over time. =A0Now that we ar= e >>> > Ivy-ized, contribs just need write a bit of ivy.xml and it'll take >>> > care of pulling dependencies. >>> > >>> > I'd imagine support for contribs would go on as it does now with >>> > queries up on hbase mailing list and help out on IRC. =A0We'd give >>> > contribs first-class billing up on home page. =A0Popular contribs mig= ht >>> > run their own mailing lists, etc... >>> > >>> > We should chat but some contribs should be pulled up into core. >>> > Thrift was core. =A0Talk was to move current thrift update out to >>> > contrib. =A0I think now it should just stay in core. =A0Stargate perh= aps >>> > should come up into core? >>> > >>> > What do folks think? >>> > St.Ack >>> > >>> > P.S. I've fostered the contrib notion in the past. =A0I've since had = a >>> > change of heart. =A0Please pardon my flip. >>> > >>> >> >> >> >> -- >> Connect to me at http://www.facebook.com/dhruba >> >