hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jerry He <jerry...@gmail.com>
Subject Re: what is the role of ProtoBuffer while creating of instance of Table/Htable
Date Mon, 11 Dec 2017 01:23:15 GMT
As Stack said.

You can try the hbase-shaded-client if you can not upgrade your protobuf
version.

Thanks.

On Tue, Dec 5, 2017 at 10:00 AM Stack <stack@duboce.net> wrote:

> On Mon, Dec 4, 2017 at 10:10 PM, Manjeet Singh <manjeet.chandhok@gmail.com
> >
> wrote:
>
> > Thanks for your reply, I have two different projects which took records
> > from Hbase
> > 1 Project is spark job and using solr for free text search -Here we are
> > using ProtoBuff
> > 2 Project is for pointed access (where I know exact rowkey)- Here we are
> > not using ProtoBuff and we are getting Exception here on creation of
> Table
> > object.
> >
> > In both case we are using Hbase Native API if Hbase internally using
> > protobuff 2.5.0 so why my project 1 is working fine this question is
> comes
> > to my mind
> >
> >
> Because order of protobuf jars is different between the two usages?
> St.Ack
>
>
>
>
> > Thanks
> > Manjeet Singh
> >
> > ---------- Forwarded message ----------
> > From: Stack <stack@duboce.net>
> > Date: Tue, Dec 5, 2017 at 3:36 AM
> > Subject: Re: what is the role of ProtoBuffer while creating of instance
> of
> > Table/Htable
> > To: Hbase-User <user@hbase.apache.org>
> >
> >
> > HBase uses pb2.5.0. Is it an incompatibility between 2.4.1 and 2.5.0 pb?
> If
> > you look at classpath, is your projects 2.4.1 pb jar coming ahead of the
> > hbase pb jar?
> > Thanks,
> > S
> >
> > On Sun, Dec 3, 2017 at 10:52 AM, Manjeet Singh <
> manjeet.chandhok@gmail.com
> > >
> > wrote:
> >
> > > Hi All,
> > >
> > > I am facing one issue where I have two different DAL in one project
> i.e.
> > > 1. DAL simply build using java and Native API.
> > > 2. Spark Job using Java and Native API. (Also using protocol buffer in
> > this
> > > project)
> > >
> > > In our Project the second one is having ( the spark job one)
> > implementation
> > > of searching using solr here we are using protocol buffere for some
> > > different business needs.
> > > In First it was simple java native code were we are accessing Hbase
> using
> > > simple Get by passing Rowkey.
> > >
> > > These project also work fine if I run these two sepratlly but when I
> > > clube thse with from one UI and try to execute our use cases I got
> below
> > > exception
> > >
> > > It's clear that its something about protocol buffer...
> > >
> > > We have compiled classes of protocol buffer using below dependecies
> > >
> > >
> > >         <dependency>
> > > <groupId>com.google.protobuf</groupId>
> > > <artifactId>protobuf-java</artifactId>
> > > <version>2.4.1</version>
> > > <scope>provided</scope>
> > > </dependency>
> > >
> > >
> > >
> > >
> > > Hbase :-
> > >
> > > <dependency>
> > > <groupId>org.apache.hbase</groupId>
> > > <artifactId>hbase-client</artifactId>
> > > <version>1.2.0-cdh5.8.0</version>
> > > <scope>compile</scope>
> > > <exclusions>
> > > <exclusion>
> > > <artifactId>jdk.tools</artifactId>
> > > <groupId>jdk.tools</groupId>
> > > </exclusion>
> > > </exclusions>
> > > </dependency>
> > >
> > >
> > > java.io.IOException: java.lang.reflect.InvocationTargetException
> > > at
> > > org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(
> > > ConnectionFactory.java:240)
> > > at
> > > org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(
> > > ConnectionFactory.java:218)
> > > at
> > > org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(
> > > ConnectionFactory.java:119)
> > > Caused by: java.lang.reflect.InvocationTargetException
> > > at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
> > > at
> > > sun.reflect.NativeConstructorAccessorImpl.newInstance(
> > > NativeConstructorAccessorImpl.java:62)
> > > at
> > > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(
> > > DelegatingConstructorAccessorImpl.java:45)
> > > at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> > > at
> > > org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(
> > > ConnectionFactory.java:238)
> > > ... 15 more
> > > Caused by: java.lang.VerifyError: class
> > > org.apache.hadoop.hbase.protobuf.generated.ClientProtos$Result
> overrides
> > > final method getUnknownFields.()Lcom/google/protobuf/UnknownFieldSet;
> > > at java.lang.ClassLoader.defineClass1(Native Method)
> > > at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
> > > at java.security.SecureClassLoader.defineClass(
> > SecureClassLoader.java:142)
> > > at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
> > > at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
> > > at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
> > > at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
> > > at java.security.AccessController.doPrivileged(Native Method)
> > > at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
> > > at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
> > > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
> > > at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> > > at
> > > org.apache.hadoop.hbase.protobuf.ProtobufUtil.<clinit>
> > > (ProtobufUtil.java:210)
> > > at org.apache.hadoop.hbase.ClusterId.parseFrom(ClusterId.java:64)
> > > at
> > > org.apache.hadoop.hbase.zookeeper.ZKClusterId.readClusterIdZNode(
> > > ZKClusterId.java:75)
> > > at
> > > org.apache.hadoop.hbase.client.ZooKeeperRegistry.getClusterId(
> > > ZooKeeperRegistry.java:105)
> > > at
> > > org.apache.hadoop.hbase.client.ConnectionManager$
> > > HConnectionImplementation.retrieveClusterId(ConnectionManager.java:919)
> > > at
> > > org.apache.hadoop.hbase.client.ConnectionManager$
> > > HConnectionImplementation.<init>(ConnectionManager.java:657)
> > > ... 20 more
> > >
> > >
> > > Can anyone help me to fix this issue using protobuff 2.4.1 version only
> > >
> > > Thanks
> > > Manjeet Singh
> > >
> >
> >
> >
> > --
> > luv all
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message