You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@spark.apache.org by Ricky <49...@qq.com> on 2015/12/13 08:30:23 UTC

回复:Classpath problem trying to use DataFrames

encountor similar problems using hivecontext .When code print classload ,it was changed to  multiclassloader from APPclassloader




------------------ 原始邮件 ------------------
发件人: Harsh J <ha...@cloudera.com>
发送时间: 2015年12月12日 12:09
收件人: Christopher Brady <ch...@oracle.com>, user <us...@spark.apache.org>
主题: Re: Classpath problem trying to use DataFrames



Do you have all your hive jars listed in the classpath.txt / SPARK_DIST_CLASSPATH env., specifically the hive-exec jar? Is the location of that jar also the same on all the distributed hosts?

Passing an explicit executor classpath string may also help overcome this (replace HIVE_BASE_DIR to the root of your hive installation):


--conf "spark.executor.extraClassPath=$HIVE_BASE_DIR/hive/lib/*"

On Sat, Dec 12, 2015 at 6:32 AM Christopher Brady <ch...@oracle.com> wrote:

I'm trying to run a basic "Hello world" type example using DataFrames
 with Hive in yarn-client mode. My code is:
 
 JavaSparkContext sc = new JavaSparkContext("yarn-client", "Test app"))
 HiveContext sqlContext = new HiveContext(sc.sc());
 sqlContext.sql("SELECT * FROM my_table").count();
 
 The exception I get on the driver is:
 java.lang.ClassNotFoundException: org.apache.hadoop.hive.ql.plan.TableDesc
 
 There are no exceptions on the executors.
 
 That class is definitely on the classpath of the driver, and it runs
 without errors in local mode. I haven't been able to find any similar
 errors on google. Does anyone know what I'm doing wrong?
 
 The full stack trace is included below:
 
 java.lang.NoClassDefFoundError: Lorg/apache/hadoop/hive/ql/plan/TableDesc;
      at java.lang.Class.getDeclaredFields0(Native Method)
      at java.lang.Class.privateGetDeclaredFields(Class.java:2436)
      at java.lang.Class.getDeclaredField(Class.java:1946)
      at
 java.io.ObjectStreamClass.getDeclaredSUID(ObjectStreamClass.java:1659)
      at java.io.ObjectStreamClass.access$700(ObjectStreamClass.java:72)
      at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:480)
      at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:468)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:468)
      at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:365)
      at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:602)
      at
 java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1622)
      at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1517)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at
 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at
 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at
 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      at scala.collection.immutable.$colon$colon.readObject(List.scala:362)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at
 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at
 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at
 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at
 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at
 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      at scala.collection.immutable.$colon$colon.readObject(List.scala:362)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at
 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at
 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at
 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at
 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at
 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      at scala.collection.immutable.$colon$colon.readObject(List.scala:362)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at
 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at
 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at
 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at
 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at
 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      at scala.collection.immutable.$colon$colon.readObject(List.scala:362)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at
 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at
 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at
 java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1893)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at
 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at
 java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
      at
 java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
      at
 java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:370)
      at
 org.apache.spark.serializer.JavaDeserializationStream.readObject(JavaSerializer.scala:72)
      at
 org.apache.spark.serializer.JavaSerializerInstance.deserialize(JavaSerializer.scala:98)
      at
 org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:64)
      at
 org.apache.spark.scheduler.ShuffleMapTask.runTask(ShuffleMapTask.scala:41)
      at org.apache.spark.scheduler.Task.run(Task.scala:88)
      at
 org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:214)
      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.apache.hadoop.hive.ql.plan.TableDesc
      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)
      ... 109 more
 
 ---------------------------------------------------------------------
 To unsubscribe, e-mail: user-unsubscribe@spark.apache.org
 For additional commands, e-mail: user-help@spark.apache.org