hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From tsuna <tsuna...@gmail.com>
Subject Re: Removing HRegionInterface in 0.96, HBASE-5889
Date Fri, 04 May 2012 05:02:20 GMT
On Thu, May 3, 2012 at 12:30 PM, Stack <stack@duboce.net> wrote:
> On Thu, May 3, 2012 at 11:54 AM, Jimmy Xiang <jxiang@cloudera.com> wrote:
>> To those non-bundled (third-party) HBase client(s) using HRegionInterface
>> directly, such as
>> asynchbase, should 0.96 be a singularity too?
>>
>
> I've already talked w/ Benoît and he is good w/ move to pb; he (we)
> will make it able to ride over the singularity.
>
> I'd vote remove HRI.  If we leave it in, its not a singularity anymore?

Yes, the singularity is fine for asynchbase too.  The only things I'm
requesting are:
  (1) If you remove the root table, please use the same znode and have
it point to meta instead.
  (2) The root znode should contain a protobuf describing where META is.
  (3) The PB in the root znode should contain a small field that
indicates what protocol version HBase expects (e.g. do we still have
the "hrpc3" bullshit from Hadoop, or is it "hrpc4" now, or do we have
an RPC envelope in full protobuf, or something else).

This way maintaining compatibility is easy.  Just read the root znode
like before, in the same location, and inspect its contents:
  - If it's a protobuf, then you know it's HBase >= 0.96, parse the
protobuf and find where the META table is and what protocol version it
expects.
  - Otherwise, it's not a protobuf, keep doing whatever we were doing
prior HBase 0.96.

-- 
Benoit "tsuna" Sigoure
Software Engineer @ www.StumbleUpon.com

Mime
View raw message