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

Jeff Zhang commented on PIG-4500:
---------------------------------

[~daijy] Even pig upgrade to hadoop 2.6.0, I think it should also need to work 
with hadoop-2.4, 2.5.

I saw pig will put tez library under its classpath (bin/pig).   Actually if 
hadoop version is earlier than 2.6.0, tez-yarn-timeline-with-acl should not 
been put to its classpath. Otherwise will throw the exception in the 
description. 
{code}
    for f in $PIG_HOME/lib/h${HADOOP_VERSION}/*.jar; do
        CLASSPATH=${CLASSPATH}:$f;
    done
{code}



> Pig's tez engine has issue when working with ATS
> ------------------------------------------------
>
>                 Key: PIG-4500
>                 URL: https://issues.apache.org/jira/browse/PIG-4500
>             Project: Pig
>          Issue Type: Bug
>            Reporter: Jeff Zhang
>
> Pig use hadoop-2.4 which don't support Timeline ACL, and 
> tez-yarn-timeline-history-with-acls only works for hadoop-2.6. It would throw 
> the following exception when using ATS in tez
> {code}
> 2015-04-07 13:44:47,208 INFO  [PigTezLauncher-0] client.TezClient 
> (TezClient.java:start(305)) - Using 
> org.apache.tez.dag.history.ats.acls.ATSHistoryACLPolicyManager to manage 
> Timeline ACLs
> Exception in thread "main" 2015-04-07 13:44:47,998 INFO  [Thread-3] 
> tez.TezLauncher (TezLauncher.java:destroy(470)) - Shutting down thread pool
> org.apache.pig.backend.executionengine.ExecException: ERROR 2117: Unexpected 
> error when launching Tez job.
> at 
> org.apache.pig.backend.hadoop.executionengine.tez.TezLauncher.handleUnCaughtException(TezLauncher.java:269)
> at 
> org.apache.pig.backend.hadoop.executionengine.tez.TezLauncher.launchPig(TezLauncher.java:222)
> at 
> org.apache.pig.backend.hadoop.executionengine.HExecutionEngine.launchPig(HExecutionEngine.java:301)
> at org.apache.pig.PigServer.launchPlan(PigServer.java:1390)
> at org.apache.pig.PigServer.executeCompiledLogicalPlan(PigServer.java:1375)
> at org.apache.pig.PigServer.execute(PigServer.java:1364)
> at org.apache.pig.PigServer.executeBatch(PigServer.java:415)
> at org.apache.pig.PigServer.executeBatch(PigServer.java:398)
> at pig_backup.PigExample.main(PigExample.java:52)
> Caused by: java.lang.RuntimeException: Could not resolve error that occured 
> when launching job: java.lang.NoClassDefFoundError: 
> org/codehaus/jackson/jaxrs/JacksonJaxbJsonProvider
> at java.lang.ClassLoader.defineClass1(Native Method)
> at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
> at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
> at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at 
> org.apache.hadoop.yarn.client.api.impl.TimelineClientImpl.<init>(TimelineClientImpl.java:63)
> at 
> org.apache.hadoop.yarn.client.api.TimelineClient.createTimelineClient(TimelineClient.java:44)
> at 
> org.apache.tez.dag.history.ats.acls.ATSHistoryACLPolicyManager.initializeTimelineClient(ATSHistoryACLPolicyManager.java:63)
> at 
> org.apache.tez.dag.history.ats.acls.ATSHistoryACLPolicyManager.setConf(ATSHistoryACLPolicyManager.java:198)
> at org.apache.tez.client.TezClient.start(TezClient.java:309)
> at 
> org.apache.pig.backend.hadoop.executionengine.tez.TezSessionManager.createSession(TezSessionManager.java:95)
> at 
> org.apache.pig.backend.hadoop.executionengine.tez.TezSessionManager.getClient(TezSessionManager.java:195)
> at 
> org.apache.pig.backend.hadoop.executionengine.tez.TezJob.run(TezJob.java:158)
> at 
> org.apache.pig.backend.hadoop.executionengine.tez.TezLauncher$1.run(TezLauncher.java:174)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: java.lang.ClassNotFoundException: 
> org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider
> at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
> at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> ... 26 more
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to