[ 
https://issues.apache.org/jira/browse/TINKERPOP-1754?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stephen mallette reassigned TINKERPOP-1754:
-------------------------------------------

             Assignee: stephen mallette
    Affects Version/s:     (was: 3.3.0)
                       3.1.7
        Fix Version/s: 3.1.8

> Spark can not deserialise some ScriptRecordReader parse exceptions
> ------------------------------------------------------------------
>
>                 Key: TINKERPOP-1754
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1754
>             Project: TinkerPop
>          Issue Type: Bug
>          Components: hadoop
>    Affects Versions: 3.1.7
>            Reporter: Artem Aliev
>            Assignee: stephen mallette
>            Priority: Minor
>             Fix For: 3.1.8
>
>
> ScriptException refer to groovy exception that could point to "Script" class 
> that is not available for system class loader. Spark can not deserialise the 
> exception and user did not get the parse error.
> To fix the problem ScriptRecordReader should not try to propagate all cause 
> exceptions abut only the message with parse error.
> Spark output:
> {code}
> WARN  [task-result-getter-0] 2017-08-16 11:11:41,777  TaskEndReason.scala:192 
> - Task exception could not be deserialized
> java.lang.ClassNotFoundException: Script1
>       at java.net.URLClassLoader.findClass(URLClassLoader.java:381) 
> ~[na:1.8.0_40]
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_40]
>       at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) 
> ~[na:1.8.0_40]
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_40]
>       at java.lang.Class.forName0(Native Method) ~[na:1.8.0_40]
>       at java.lang.Class.forName(Class.java:348) ~[na:1.8.0_40]
>       at 
> org.apache.spark.serializer.JavaDeserializationStream$$anon$1.resolveClass(JavaSerializer.scala:67)
>  ~[spark-core_2.11-2.2.0.0-bb4c2a9.jar:2.2.0.0-bb4c2a9]
>       at 
> java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1613) 
> [na:1.8.0_40]
>       at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1518) 
> [na:1.8.0_40]
>       at java.io.ObjectInputStream.readClass(ObjectInputStream.java:1484) 
> [na:1.8.0_40]
>       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1334) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) 
> [na:1.8.0_40]
>       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:501) 
> [na:1.8.0_40]
>       at java.lang.Throwable.readObject(Throwable.java:914) ~[na:1.8.0_40]
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
> ~[na:1.8.0_40]
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
> ~[na:1.8.0_40]
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>  ~[na:1.8.0_40]
>       at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_40]
>       at 
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1896) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) 
> [na:1.8.0_40]
>       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:501) 
> [na:1.8.0_40]
>       at java.lang.Throwable.readObject(Throwable.java:914) ~[na:1.8.0_40]
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
> ~[na:1.8.0_40]
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
> ~[na:1.8.0_40]
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>  ~[na:1.8.0_40]
>       at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_40]
>       at 
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1896) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) 
> [na:1.8.0_40]
>       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) 
> [na:1.8.0_40]
>       at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371) 
> [na:1.8.0_40]
>       at 
> org.apache.spark.ThrowableSerializationWrapper.readObject(TaskEndReason.scala:193)
>  ~[spark-core_2.11-2.2.0.0-bb4c2a9.jar:2.2.0.0-bb4c2a9]
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
> ~[na:1.8.0_40]
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
> ~[na:1.8.0_40]
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>  ~[na:1.8.0_40]
>       at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_40]
>       at 
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1017) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1896) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) 
> [na:1.8.0_40]
>       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) 
> [na:1.8.0_40]
>       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918) 
> [na:1.8.0_40]
>       at 
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801) 
> [na:1.8.0_40]
>       at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351) 
> [na:1.8.0_40]
>       at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371) 
> [na:1.8.0_40]
>       at 
> org.apache.spark.serializer.JavaDeserializationStream.readObject(JavaSerializer.scala:75)
>  [spark-core_2.11-2.2.0.0-bb4c2a9.jar:2.2.0.0-bb4c2a9]
>       at 
> org.apache.spark.serializer.JavaSerializerInstance.deserialize(JavaSerializer.scala:114)
>  [spark-core_2.11-2.2.0.0-bb4c2a9.jar:2.2.0.0-bb4c2a9]
>       at 
> org.apache.spark.scheduler.TaskResultGetter$$anon$4$$anonfun$run$2.apply$mcV$sp(TaskResultGetter.scala:136)
>  [spark-core_2.11-2.2.0.0-bb4c2a9.jar:2.2.0.0-bb4c2a9]
>       at 
> org.apache.spark.scheduler.TaskResultGetter$$anon$4$$anonfun$run$2.apply(TaskResultGetter.scala:132)
>  [spark-core_2.11-2.2.0.0-bb4c2a9.jar:2.2.0.0-bb4c2a9]
>       at 
> org.apache.spark.scheduler.TaskResultGetter$$anon$4$$anonfun$run$2.apply(TaskResultGetter.scala:132)
>  [spark-core_2.11-2.2.0.0-bb4c2a9.jar:2.2.0.0-bb4c2a9]
>       at org.apache.spark.util.Utils$.logUncaughtExceptions(Utils.scala:1954) 
> [spark-core_2.11-2.2.0.0-bb4c2a9.jar:2.2.0.0-bb4c2a9]
>       at 
> org.apache.spark.scheduler.TaskResultGetter$$anon$4.run(TaskResultGetter.scala:132)
>  [spark-core_2.11-2.2.0.0-bb4c2a9.jar:2.2.0.0-bb4c2a9]
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>  [na:1.8.0_40]
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>  [na:1.8.0_40]
>       at java.lang.Thread.run(Thread.java:745) [na:1.8.0_40]
> {code}



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

Reply via email to