Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-5379

NoClassDefFoundError is thrown when using lead/lag with kryo serialization

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 0.13.0
    • PTF-Windowing
    • None

    Description

      java.lang.RuntimeException: Error in configuring object
      	at org.apache.hadoop.util.ReflectionUtils.setJobConf(ReflectionUtils.java:93)
      	at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:64)
      	at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
      	at org.apache.hadoop.mapred.ReduceTask.runOldReducer(ReduceTask.java:432)
      	at org.apache.hadoop.mapred.ReduceTask.run(ReduceTask.java:417)
      	at org.apache.hadoop.mapred.Child$4.run(Child.java:266)
      	at java.security.AccessController.doPrivileged(Native Method)
      	at javax.security.auth.Subject.doAs(Subject.java:396)
      	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1278)
      	at org.apache.hadoop.mapred.Child.main(Child.java:260)
      Caused by: java.lang.reflect.InvocationTargetException
      	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.util.ReflectionUtils.setJobConf(ReflectionUtils.java:88)
      	... 9 more
      Caused by: java.lang.NoClassDefFoundError: org/antlr/runtime/tree/TreeWizard$ContextVisitor
      	at java.lang.ClassLoader.defineClass1(Native Method)
      	at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
      	at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
      	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
      	at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
      	at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
      	at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
      	at java.security.AccessController.doPrivileged(Native Method)
      	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
      	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
      	at java.lang.Class.getDeclaringClass(Native Method)
      	at java.lang.Class.getEnclosingClass(Class.java:1085)
      	at com.esotericsoftware.kryo.Kryo.newInstantiator(Kryo.java:1054)
      	at com.esotericsoftware.kryo.Kryo.newInstance(Kryo.java:1110)
      	at com.esotericsoftware.kryo.serializers.FieldSerializer.create(FieldSerializer.java:526)
      	at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:502)
      	at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:694)
      	at com.esotericsoftware.kryo.serializers.ObjectField.read(ObjectField.java:106)
      	at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:507)
      	at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:694)
      	at com.esotericsoftware.kryo.serializers.ObjectField.read(ObjectField.java:106)
      	at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:507)
      	at com.esotericsoftware.kryo.Kryo.readClassAndObject(Kryo.java:776)
      	at com.esotericsoftware.kryo.serializers.CollectionSerializer.read(CollectionSerializer.java:112)
      	at com.esotericsoftware.kryo.serializers.CollectionSerializer.read(CollectionSerializer.java:18)
      	at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:694)
      	at com.esotericsoftware.kryo.serializers.ObjectField.read(ObjectField.java:106)
      	at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:507)
      	at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:694)
      	at com.esotericsoftware.kryo.serializers.ObjectField.read(ObjectField.java:106)
      	at com.esotericsoftware.kryo.serializers.FieldSerializer.read(FieldSerializer.java:507)
      	at com.esotericsoftware.kryo.Kryo.readObject(Kryo.java:672)
      	at org.apache.hadoop.hive.ql.exec.Utilities.deserializeObjectByKryo(Utilities.java:812)
      	at org.apache.hadoop.hive.ql.exec.Utilities.deserializePlan(Utilities.java:723)
      	at org.apache.hadoop.hive.ql.exec.Utilities.deserializePlan(Utilities.java:736)
      	at org.apache.hadoop.hive.ql.exec.Utilities.getBaseWork(Utilities.java:304)
      	at org.apache.hadoop.hive.ql.exec.Utilities.getReduceWork(Utilities.java:262)
      	at org.apache.hadoop.hive.ql.exec.mr.ExecReducer.configure(ExecReducer.java:115)
      	... 14 more
      Caused by: java.lang.ClassNotFoundException: org.antlr.runtime.tree.TreeWizard$ContextVisitor
      	at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
      	at java.security.AccessController.doPrivileged(Native Method)
      	at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
      	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
      	at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
      

      Seemed LeadLagInfo in PTFTranslator is the problem.

      Attachments

        1. D13155.1.patch
          7 kB
          Phabricator

        Activity

          People

            navis Navis Ryu
            navis Navis Ryu
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: