I change my application to use ProtocolBuffers 2.5 then this issue resolved.
On Fri, Mar 17, 2017 at 12:36 PM, Hef <hef.onl...@gmail.com> wrote: > Hi group, > I have a problem using ProtocolBuffers 3 in my application with CDH5.6 > HBase 1.0. > > When creating BufferedMutator and flush data into HBase, it shows an error > as below: > > java.lang.NoClassDefFoundError: Could not initialize class > org.apache.hadoop.hbase.util.ByteStringer > at org.apache.hadoop.hbase.protobuf.RequestConverter.buildRegionSpecifier( > RequestConverter.java:995) > at org.apache.hadoop.hbase.protobuf.RequestConverter. > buildGetRowOrBeforeRequest(RequestConverter.java:138) > at org.apache.hadoop.hbase.protobuf.ProtobufUtil. > getRowOrBefore(ProtobufUtil.java:1579) > at org.apache.hadoop.hbase.client.ConnectionManager$ > HConnectionImplementation.locateRegionInMeta(ConnectionManager.java:1293) > at org.apache.hadoop.hbase.client.ConnectionManager$ > HConnectionImplementation.locateRegion(ConnectionManager.java:1125) > at org.apache.hadoop.hbase.client.AsyncProcess.submit( > AsyncProcess.java:369) > at org.apache.hadoop.hbase.client.AsyncProcess.submit( > AsyncProcess.java:320) > at org.apache.hadoop.hbase.client.BufferedMutatorImpl. > backgroundFlushCommits(BufferedMutatorImpl.java:198) > at org.apache.hadoop.hbase.client.BufferedMutatorImpl. > doMutate(BufferedMutatorImpl.java:141) > at org.apache.hadoop.hbase.client.BufferedMutatorImpl. > mutate(BufferedMutatorImpl.java:105) > > It looks like HBase is using ProtocolBuffers2.5, which cause the bytecode > incompatible. > > Does anyone has experience of resolving this problem? Or I have to switch > back to protocol 2.5. > > > >