Cannot connect to 0.20 HBase from an MR job running on a 0.19.0 version of
Hadoop
---------------------------------------------------------------------------------
Key: HBASE-1691
URL: https://issues.apache.org/jira/browse/HBASE-1691
Project: Hadoop HBase
Issue Type: Bug
Components: client
Affects Versions: 0.20.0
Reporter: Eric Tschetter
When running MR jobs on 0.19.0 Hadoop, the hadoop core libraries get loaded by
the classloader before 0.20 libraries included in the job jar. HBaseClient
makes a call to org.apache.hadoop.net.NetUtils.connect on line 305 which does
not exist in previous versions of the hadoop jars and therefore results in
NoSuchMethodErrors getting thrown.
As a simple workaround, you can replace the call
NetUtils.connect(socket, remoteId.getAddress(), 20000);
with
socket.connect(remoteId.getAddress(), 20000);
Note, however, that the javadoc on the NetUtils.connect() method makes mention
of sun's implementation of stuff being less than wonderful, so the existence of
this JIRA and this workaround should not be taken as meaning that this is
actually a recommended solution.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.