On Jun 6, 2011, at 10:00 AM, Todd Lipcon wrote: > On Mon, Jun 6, 2011 at 9:45 AM, Allen Wittenauer <a...@apache.org> wrote: > >> >> >> I have some concerns over the recent usage of LimitedPrivate being >> opened up to HBase. Shouldn't HBase really be sticking to public APIs >> rather than poking through some holes? If HBase needs an API, wouldn't >> other clients as well? >> > > IMO LimitedPrivate can be used to open an API for a specific project when > it's not clear that the API is generally useful, and/or we anticipate the > API might be pretty unstable. Marking it LimitedPrivate to HBase gives us > the opportunity to talk to the HBase team and say "hey, we want to rename > this without @Deprecation" or "hey, we're going to kill this, is that OK?" > Making it true public, even if we call it Unstable, is a bit harder to move.
True, but what makes HBase a unique snowflake? What is the criteria by which an API gets opened to something outside of the Hadoop umbrella? Why shouldn't something be private to Hadoop just because HBase or someone else wants to use it? > I agree that most of these things in the long run would be determined > generally useful and made public. > > Do you have a specific thing in mind? Not really. I just wanted to take a temperature to see what other people are thinking and whether we actually have any guidelines. Doing this wild west style seems fraught with danger. ("You opened this up for them, why can't you up this up for us?") (Although I must admit that the first usage of this--the HttpServer code--sort of left with a "Seriously? You must be kidding." kind of feeling about it.)