[ https://issues.apache.org/jira/browse/HBASE-19145?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16572648#comment-16572648 ]
Jerry He commented on HBASE-19145: ---------------------------------- Trying to put some result here with the latest HBase 2.1.0 client going to 1.4.6 server. Simple put, delete, scan work ok. But some of the Admin APIs will fail. The main reason is in HBase 2.x, the table state is kept in meta. Therefore 2.x client will always go ask for table state from meta on the server, but 1.x server does not have it in meta. {code:java} org.apache.hadoop.hbase.regionserver.NoSuchColumnFamilyException: Column family table does not exist in region hbase:meta,,1.1588230740 in table 'hbase:meta', {TABLE_ATTRIBUTES => {IS_META => 'true', coprocessor$1 => '|org.apache.hadoop.hbase.coprocessor.MultiRowMutationEndpoint|536870911|'}, {NAME => 'info', BLOOMFILTER => 'NONE', VERSIONS => '3', IN_MEMORY => 'true', KEEP_DELETED_CELLS => 'FALSE', DATA_BLOCK_ENCODING => 'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', CACHE_DATA_IN_L1 => 'true', MIN_VERSIONS => '0', BLOCKCACHE => 'true', BLOCKSIZE => '8192', REPLICATION_SCOPE => '0'} at org.apache.hadoop.hbase.regionserver.HRegion.checkFamily(HRegion.java:8298) at org.apache.hadoop.hbase.regionserver.HRegion.get(HRegion.java:7306) at org.apache.hadoop.hbase.regionserver.RSRpcServices.get(RSRpcServices.java:2259) at org.apache.hadoop.hbase.protobuf.generated.ClientProtos$ClientService$2.callBlockingMethod(ClientProtos.java:36609) at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2354){code} See HBASE-12035. Any API asking for the status of the table will fail: disable, enable, flush, alter, exists, clone_snapshot, etc. It is not an extensive testing. There does not seem to be a need or requirement to make it work. So I am closing this task for now. > Look into hbase-2 client going to hbase-1 server > ------------------------------------------------ > > Key: HBASE-19145 > URL: https://issues.apache.org/jira/browse/HBASE-19145 > Project: HBase > Issue Type: Task > Affects Versions: 2.0.0-beta-1 > Reporter: Jerry He > Priority: Major > > From the "[DISCUSS] hbase-2.0.0 compatibility expectations" thread. > Do we support hbase-2 client going against hbase-1 server? > We seem to be fine mix-and-match the clients and servers within the > hbase-1 releases. And IIRC hbase-1 client is ok against 0.98 server. > Suppose I have a product that depends and bundles HBase client. I > want to upgrade the dependency to hbase-2 so that it can take > advantages of and claim support of hbase-2. > But does it mean that I will need drop the claims that the new version > of the product support any hbase-1 backend? > It has not been an objective. It might work doing basic Client API on a > later branch-1 but will fail doing Admin functions (and figuring if a Table > is online). If it was a small thing to make it > work, lets get it in. > Let's look into it to see what works and what not. Have a statement at least. -- This message was sent by Atlassian JIRA (v7.6.3#76005)