You are running the transactional hbase subclass intentionally?

If so, could it be that you are not using the transactional client to match?

St.Ack

On Sun, Mar 15, 2009 at 9:13 AM, Cris Daniluk <[email protected]>wrote:

> I'm running a pseudo-distributed (for the moment) Hadoop server with
> HBase on the same server running with 1 master and 1 region. HBase is
> successfully talking to HDFS, has created the hbase directory, etc. In
> addition, the master/region server are talking just fine. When I try
> to connect with the HBase client, I see the following client-side
> error:
>
> java.io.IOException: java.io.IOException: Unknown protocol to name
> node: org.apache.hadoop.hbase.ipc.TransactionalRegionInterface
>     at
> org.apache.hadoop.hbase.regionserver.HRegionServer.getProtocolVersion(HRegionServer.java:2140)
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>     at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>     at java.lang.reflect.Method.invoke(Method.java:597)
>     at org.apache.hadoop.hbase.ipc.HBaseRPC$Server.call(HBaseRPC.java:632)
>     at
> org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:895)
>     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>     at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown
> Source)
>     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown
> Source)
>     at java.lang.reflect.Constructor.newInstance(Unknown Source)
>     at
> org.apache.hadoop.hbase.RemoteExceptionHandler.decodeRemoteException(RemoteExceptionHandler.java:95)
>     at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getHRegionConnection(HConnectionManager.java:729)
>     at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRootRegion(HConnectionManager.java:773)
>     at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:448)
>     at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:423)
>     at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegionInMeta(HConnectionManager.java:498)
>     at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.locateRegion(HConnectionManager.java:457)
>     at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.relocateRegion(HConnectionManager.java:430)
>     at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getRegionLocation(HConnectionManager.java:289)
>     at
> org.apache.hadoop.hbase.client.ServerCallable.instantiateServer(ServerCallable.java:57)
>     at
> org.apache.hadoop.hbase.client.ScannerCallable.instantiateServer(ScannerCallable.java:66)
>     at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getRegionServerWithRetries(HConnectionManager.java:827)
>     at
> org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:56)
>     at
> org.apache.hadoop.hbase.client.MetaScanner.metaScan(MetaScanner.java:30)
>     at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.listTables(HConnectionManager.java:311)
>     at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.tableExists(HConnectionManager.java:264)
>     at
> org.apache.hadoop.hbase.client.HBaseAdmin.tableExists(HBaseAdmin.java:108)
>     at
> org.apache.jackrabbit.hadoop.HBasePersistenceManager.init(HBasePersistenceManager.java:104)
>     at
> org.apache.jackrabbit.core.RepositoryImpl.createPersistenceManager(RepositoryImpl.java:1339)
> ...
> 2009-03-15 11:54:06,387 DEBUG stacks[main]
>
> org.apache.hadoop.hbase.ipc.HBaseClient$Connection.sendParam(HBaseClient.java:466):
> IPC Client (47) connection to /10.10.115.21:60000 from an unknown user
> sending #32
> 2009-03-15 11:54:06,409 DEBUG stacks[IPC Client (47) connection to
> /10.10.115.21:60000 from an unknown user]
>
> org.apache.hadoop.hbase.ipc.HBaseClient$Connection.receiveResponse(HBaseClient.java:501):
> IPC Client (47) connection to /10.10.115.21:60000 from an unknown user
> got value #32
>
> On the server side, I see:
>
> 2009-03-15 11:54:05,278 INFO org.apache.hadoop.ipc.HBaseServer: IPC
> Server handler 7 on 60020, call
>
> getProtocolVersion(org.apache.hadoop.hbase.ipc.TransactionalRegionInterface,
> 15) from 10.178.0.52:64001: error: java.io.IOException: Unknown
> protocol to name node:
> org.apache.hadoop.hbase.ipc.TransactionalRegionInterface
> java.io.IOException: Unknown protocol to name node:
> org.apache.hadoop.hbase.ipc.TransactionalRegionInterface
>        at
> org.apache.hadoop.hbase.regionserver.HRegionServer.getProtocolVersion(HRegionServer.java:2140)
>        at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.hadoop.hbase.ipc.HBaseRPC$Server.call(HBaseRPC.java:632)
>        at
> org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:895)
>
> I'm using Hadoop 0.19.1 with HBase 0.19.0. It was hard to debug to see
> why it is sending the subinterface name instead of the interface name
> (HRegionInterface), so I can't tell if it is a bug on my end, HBase's
> end or something in between. Any help would be appreciated!
>

Reply via email to