Brian Schrameck created SPARK-16882:
---------------------------------------

             Summary: Failures in JobGenerator Thread are Swallowed, Job Does 
Not Fail
                 Key: SPARK-16882
                 URL: https://issues.apache.org/jira/browse/SPARK-16882
             Project: Spark
          Issue Type: Bug
          Components: Scheduler, Streaming
    Affects Versions: 1.5.0
         Environment: CDH 5.6.1, CentOS 6.7
            Reporter: Brian Schrameck


Using the fileStream functionality and reading a directory with a large number 
of files over a long period of time, JVM garbage collection limits can be 
reached. In this case, the JobGenerator thread threw the exception, but it was 
completely swallowed and did not cause the job to fail. There were no errors in 
the ApplicationMaster, and the job just silently sat there not processing any 
further batches.

It would be expected that any fatal exception, not necessarily specific to this 
OutOfMemoryError, be handled appropriately and the job should be killed with 
the correct failure code.

We are running in YARN cluster mode on a CDH 5.6.1 cluster.

{noformat}Exception in thread "JobGenerator" java.lang.OutOfMemoryError: GC 
overhead limit exceeded
        at java.lang.AbstractStringBuilder.<init>(AbstractStringBuilder.java:68)
        at java.lang.StringBuilder.<init>(StringBuilder.java:89)
        at org.apache.hadoop.fs.Path.<init>(Path.java:109)
        at 
org.apache.hadoop.fs.RawLocalFileSystem.listStatus(RawLocalFileSystem.java:430)
        at org.apache.hadoop.fs.FileSystem.listStatus(FileSystem.java:1494)
        at org.apache.hadoop.fs.FileSystem.listStatus(FileSystem.java:1534)
        at 
org.apache.hadoop.fs.ChecksumFileSystem.listStatus(ChecksumFileSystem.java:569)
        at org.apache.hadoop.fs.FileSystem.listStatus(FileSystem.java:1494)
        at org.apache.hadoop.fs.FileSystem.listStatus(FileSystem.java:1534)
        at 
org.apache.spark.streaming.dstream.FileInputDStream.findNewFiles(FileInputDStream.scala:195)
        at 
org.apache.spark.streaming.dstream.FileInputDStream.compute(FileInputDStream.scala:146)
        at 
org.apache.spark.streaming.dstream.DStream$$anonfun$getOrCompute$1$$anonfun$1$$anonfun$apply$7.apply(DStream.scala:350)
        at 
org.apache.spark.streaming.dstream.DStream$$anonfun$getOrCompute$1$$anonfun$1$$anonfun$apply$7.apply(DStream.scala:350)
        at scala.util.DynamicVariable.withValue(DynamicVariable.scala:57)
        at 
org.apache.spark.streaming.dstream.DStream$$anonfun$getOrCompute$1$$anonfun$1.apply(DStream.scala:349)
        at 
org.apache.spark.streaming.dstream.DStream$$anonfun$getOrCompute$1$$anonfun$1.apply(DStream.scala:349)
        at 
org.apache.spark.streaming.dstream.DStream.createRDDWithLocalProperties(DStream.scala:399)
        at 
org.apache.spark.streaming.dstream.DStream$$anonfun$getOrCompute$1.apply(DStream.scala:344)
        at 
org.apache.spark.streaming.dstream.DStream$$anonfun$getOrCompute$1.apply(DStream.scala:342)
        at scala.Option.orElse(Option.scala:257)
        at 
org.apache.spark.streaming.dstream.DStream.getOrCompute(DStream.scala:339)
        at 
org.apache.spark.streaming.dstream.ForEachDStream.generateJob(ForEachDStream.scala:38)
        at 
org.apache.spark.streaming.DStreamGraph$$anonfun$1.apply(DStreamGraph.scala:120)
        at 
org.apache.spark.streaming.DStreamGraph$$anonfun$1.apply(DStreamGraph.scala:120)
        at 
scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:251)
        at 
scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:251)
        at 
scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
        at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
        at 
scala.collection.TraversableLike$class.flatMap(TraversableLike.scala:251)
        at scala.collection.AbstractTraversable.flatMap(Traversable.scala:105)
        at 
org.apache.spark.streaming.DStreamGraph.generateJobs(DStreamGraph.scala:120)
        at 
org.apache.spark.streaming.scheduler.JobGenerator$$anonfun$2.apply(JobGenerator.scala:247){noformat}



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to