The changes were made to 0.20.6 - I wonder if they're useful. People using 0.89 may do the same.
On Thu, Feb 17, 2011 at 7:33 PM, Stack <[email protected]> wrote: > Do you want to post your patch to an issue Ted? Others might be > interested. > Thanks, > St.Ack > > On Thu, Feb 17, 2011 at 5:03 PM, Ted Yu <[email protected]> wrote: > > In order to minimize maintenance, we produced an hbase-0.20.6 jar which > > contains the changed APIs (limited to our use cases) in 0.90.1 > > This way our code builds with both jars and we can easily switch. > > > > FYI > > > > On Wed, Feb 16, 2011 at 3:29 PM, Ryan Rawson <[email protected]> wrote: > > > >> Step 1 is to add the jdiff framework in, that is a non-trivial but > >> straightforward change. > >> Step 2 is to annotate all the APIs, something that should be done by > >> various domain experts over time. Even if this is not complete there > >> is value with #1. > >> Step 3: ? > >> Step 4: profit! > >> > >> On Wed, Feb 16, 2011 at 3:17 PM, Ted Yu <[email protected]> wrote: > >> > Looking at what Stack is doing in > >> > https://issues.apache.org/jira/browse/HBASE-1502, I think we can use > the > >> > following appoach: > >> > 1. create the annotations below > >> > 2. Committers who actively refactor code place proper annotation on > the > >> > classes they touch > >> > 3. after some time, we should be able to mark the classes/methods > >> untouched > >> > by #2 stable. > >> > > >> > My two cents. > >> > > >> > On Wed, Feb 16, 2011 at 2:12 PM, Ted Yu <[email protected]> wrote: > >> > > >> >> The following annotation can only be attached by HBase committer(s): > >> >> > >> >> > >> >> Stability: > >> >> - Unstable: may change and likely to change between point releases, > >> >> - Evolving: possibly change between point releases but unlikely, > could > >> >> well change between bigger releases > >> >> > >> >> Contributors would have a hard time keeping up with current > development. > >> >> > >> >> > >> >> On Wed, Feb 16, 2011 at 12:46 PM, Ted Yu <[email protected]> > wrote: > >> >> > >> >>> I am not very familiar with (internal) HBase APIs which grow quite > >> large. > >> >>> I have a full-time job. > >> >>> > >> >>> And this task is quite big. > >> >>> > >> >>> Community effort should be the best approach. > >> >>> > >> >>> > >> >>> On Wed, Feb 16, 2011 at 12:20 PM, Todd Lipcon <[email protected]> > >> wrote: > >> >>> > >> >>>> On Wed, Feb 16, 2011 at 12:16 PM, Ryan Rawson <[email protected] > >> >wrote: > >> >>>> > >> >>>>> Sounds like Ted volunteered to do it! > >> >>>>> > >> >>>> > >> >>>> Woohoo, thanks Ted! > >> >>>> > >> >>>> -Todd > >> >>>> > >> >>>> > >> >>>>> On Wed, Feb 16, 2011 at 12:15 PM, Ted Yu <[email protected]> > >> wrote: > >> >>>>> > Definitely. > >> >>>>> > > >> >>>>> > On Wed, Feb 16, 2011 at 11:57 AM, Todd Lipcon < > [email protected]> > >> >>>>> wrote: > >> >>>>> > > >> >>>>> >> In Hadoop land, Tom White did some awesome work to add special > >> >>>>> annotations > >> >>>>> >> that we stick on all the public classes that classify the > >> interfaces > >> >>>>> as: > >> >>>>> >> > >> >>>>> >> Stability: > >> >>>>> >> - Unstable: may change and likely to change between point > >> releases, > >> >>>>> >> - Evolving: possibly change between point releases but > unlikely, > >> >>>>> could > >> >>>>> >> well change between bigger releases > >> >>>>> >> - Stable: hasn't changed in a long time, unlikely to change > >> >>>>> >> > >> >>>>> >> Audience: Private, Limited, Public > >> >>>>> >> - Private: not meant for users, even if it's "Stable" we might > >> >>>>> change it > >> >>>>> >> and break you without a deprecation path > >> >>>>> >> - Limited: meant only for a certain set of specified projects > (eg > >> we > >> >>>>> might > >> >>>>> >> say "this API is only for use by Hive, and we'll change it so > long > >> as > >> >>>>> the > >> >>>>> >> hive people are OK with it") > >> >>>>> >> - Public: won't change without deprecation path for one major > >> >>>>> release > >> >>>>> >> > >> >>>>> >> He also built some cool tools to do jdiff and javadoc with > these > >> >>>>> >> annotations > >> >>>>> >> taken into account (eg javadoc won't show private APIs) > >> >>>>> >> > >> >>>>> >> Are people interested in bringing this system over to HBase? > >> >>>>> >> > >> >>>>> >> -Todd > >> >>>>> >> > >> >>>>> >> On Wed, Feb 16, 2011 at 11:51 AM, Ryan Rawson < > [email protected] > >> > > >> >>>>> wrote: > >> >>>>> >> > >> >>>>> >> > Well done Andrew. > >> >>>>> >> > > >> >>>>> >> > People who want to know the API differences should probably > >> mostly > >> >>>>> only > >> >>>>> >> > read: > >> >>>>> >> > > >> >>>>> >> > > >> >>>>> >> > > >> >>>>> >> > >> >>>>> > >> > https://tm-files.s3.amazonaws.com/hbase/jdiff-hbase-0.90.1/changes/pkg_org.apache.hadoop.hbase.client.html > >> >>>>> >> > > >> >>>>> >> > And specifically the HTable, Put, Get, Delete, Scan classes. > >> >>>>> >> > > >> >>>>> >> > > >> >>>>> >> > > >> >>>>> >> > On Wed, Feb 16, 2011 at 7:19 AM, Andrew Purtell < > >> >>>>> [email protected]> > >> >>>>> >> > wrote: > >> >>>>> >> > > I ran jdiff by hand. See: > >> >>>>> >> > > > >> >>>>> >> > > > >> >>>>> >> > > >> >>>>> > >> https://tm-files.s3.amazonaws.com/hbase/jdiff-hbase-0.90.1/changes.html > >> >>>>> >> > > > >> >>>>> >> > > Best regards, > >> >>>>> >> > > > >> >>>>> >> > > - Andy > >> >>>>> >> > > > >> >>>>> >> > > Problems worthy of attack prove their worth by hitting > back. > >> >>>>> >> > > - Piet Hein (via Tom White) > >> >>>>> >> > > > >> >>>>> >> > > > >> >>>>> >> > > --- On Wed, 2/16/11, Lars George <[email protected]> > >> wrote: > >> >>>>> >> > > > >> >>>>> >> > >> From: Lars George <[email protected]> > >> >>>>> >> > >> Subject: Re: API changes between 0.20.6 and 0.90.1 > >> >>>>> >> > >> To: [email protected] > >> >>>>> >> > >> Date: Wednesday, February 16, 2011, 1:22 AM > >> >>>>> >> > >> +1, I like that idea. > >> >>>>> >> > >> > >> >>>>> >> > >> On Wed, Feb 16, 2011 at 2:43 AM, Todd Lipcon < > >> [email protected] > >> >>>>> > > >> >>>>> >> > >> wrote: > >> >>>>> >> > >> > Hi Ted, > >> >>>>> >> > >> > > >> >>>>> >> > >> > I'd recommend setting up jdiff to answer this > >> >>>>> >> > >> question. Would be a good > >> >>>>> >> > >> > contribution to our source base to be able to run this > >> >>>>> >> > >> automatically and > >> >>>>> >> > >> > generate a report as part of our build. We do this in > >> >>>>> >> > >> Hadoop and it's very > >> >>>>> >> > >> > useful. > >> >>>>> >> > >> > > >> >>>>> >> > >> > -Todd > >> >>>>> >> > >> > > >> >>>>> >> > >> > On Tue, Feb 15, 2011 at 5:14 PM, Ted Yu < > >> [email protected]> > >> >>>>> >> > >> wrote: > >> >>>>> >> > >> > > >> >>>>> >> > >> >> Can someone tell me which classes from the list > >> >>>>> >> > >> below changed API between > >> >>>>> >> > >> >> 0.20.6 and 0.90.1 ? > >> >>>>> >> > >> >> http://pastebin.com/TkZfPt52 > >> >>>>> >> > >> >> > >> >>>>> >> > >> >> Thanks > >> >>>>> >> > >> >> > >> >>>>> >> > >> > > >> >>>>> >> > >> > > >> >>>>> >> > >> > > >> >>>>> >> > >> > -- > >> >>>>> >> > >> > Todd Lipcon > >> >>>>> >> > >> > Software Engineer, Cloudera > >> >>>>> >> > >> > > >> >>>>> >> > >> > >> >>>>> >> > > > >> >>>>> >> > > > >> >>>>> >> > > > >> >>>>> >> > > > >> >>>>> >> > > > >> >>>>> >> > > > >> >>>>> >> > > >> >>>>> >> > >> >>>>> >> > >> >>>>> >> > >> >>>>> >> -- > >> >>>>> >> Todd Lipcon > >> >>>>> >> Software Engineer, Cloudera > >> >>>>> >> > >> >>>>> > > >> >>>>> > >> >>>> > >> >>>> > >> >>>> > >> >>>> -- > >> >>>> Todd Lipcon > >> >>>> Software Engineer, Cloudera > >> >>>> > >> >>> > >> >>> > >> >> > >> > > >> > > >
