You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Yi Liang (JIRA)" <ji...@apache.org> on 2017/09/12 23:59:00 UTC

[jira] [Commented] (HBASE-18803) Mapreduce job get failed caused by NoClassDefFoundError: org/apache/commons/lang3/ArrayUtils

    [ https://issues.apache.org/jira/browse/HBASE-18803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16163895#comment-16163895 ] 

Yi Liang commented on HBASE-18803:
----------------------------------

[~stack] 
   This patch can solve some NoClassDefFoundError error in hbase, but hbase pe still give errors as below: 
{quote}
2017-09-12 21:10:38,049 INFO  [main] mapreduce.Job:  map 0% reduce 0%
2017-09-12 21:10:42,311 INFO  [main] mapreduce.Job: Task Id : attempt_1505248985471_0003_m_000000_0, Status : FAILED
Error: java.io.IOException: java.util.concurrent.ExecutionException: java.lang.ClassCastException: org.apache.curator.framework.imps.GetDataBuilderImpl cannot be cast to org.apache.curator.framework.api.ErrorListenerPathable
	at org.apache.hadoop.hbase.PerformanceEvaluation$EvaluationMapTask.map(PerformanceEvaluation.java:316)
	at org.apache.hadoop.hbase.PerformanceEvaluation$EvaluationMapTask.map(PerformanceEvaluation.java:264)
	at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:146)
	at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:787)
	at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
	at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:422)
	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1657)
	at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)
Caused by: java.util.concurrent.ExecutionException: java.lang.ClassCastException: org.apache.curator.framework.imps.GetDataBuilderImpl cannot be cast to org.apache.curator.framework.api.ErrorListenerPathable
	at java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357)
	at java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895)
	at org.apache.hadoop.hbase.PerformanceEvaluation$EvaluationMapTask.map(PerformanceEvaluation.java:314)
	... 9 more
{quote}

This may caused by version conflicts of org.apache.curator;   In hbase we use curator-xxx-2.12.0.jar, however, for mapreduce/hadoop, it bring in curator-xxx-2.7.1.jar.  I think we need to use shaded jar in hbase, see HBASE-18800

> Mapreduce job get failed caused by NoClassDefFoundError: org/apache/commons/lang3/ArrayUtils
> --------------------------------------------------------------------------------------------
>
>                 Key: HBASE-18803
>                 URL: https://issues.apache.org/jira/browse/HBASE-18803
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 2.0.0-alpha-2
>            Reporter: Yi Liang
>            Assignee: Yi Liang
>             Fix For: 2.0.0
>
>         Attachments: HBASE-18803-v1-master.patch
>
>
> 2017-09-12 17:44:13,020 INFO  [main] mapreduce.Job: Task Id : attempt_1505170797673_0010_m_000000_0, Status : FAILED
> Error: java.io.IOException: java.lang.reflect.InvocationTargetException
> 	at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:221)
> 	at org.apache.hadoop.hbase.client.ConnectionFactory.createConnection(ConnectionFactory.java:114)
> 	at org.apache.hadoop.hbase.PerformanceEvaluation$EvaluationMapTask.map(PerformanceEvaluation.java:311)
> 	at org.apache.hadoop.hbase.PerformanceEvaluation$EvaluationMapTask.map(PerformanceEvaluation.java:264)
> 	at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:146)
> 	at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:787)
> 	at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341)
> 	at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:164)
> 	at java.security.AccessController.doPrivileged(Native Method)
> 	at javax.security.auth.Subject.doAs(Subject.java:422)
> 	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1657)
> 	at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158)
> 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:219)
> 	... 11 more
> Caused by: java.lang.NoClassDefFoundError: org/apache/commons/lang3/ArrayUtils
> 	at org.apache.hadoop.hbase.HConstants.<clinit>(HConstants.java:1144)
> 	at org.apache.hadoop.hbase.client.ConnectionUtils.getPauseTime(ConnectionUtils.java:84)
> 	at org.apache.hadoop.hbase.client.AsyncProcess.<init>(AsyncProcess.java:209)
> 	at org.apache.hadoop.hbase.client.ConnectionImplementation.<init>(ConnectionImplementation.java:266)
> 	... 16 more



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)