linkedin / linkedin/dr-elephant

Failed to Analyze spark 1.6 history application

Open
#366 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
1.4k
Forks
839
PR merge metrics
No merged PRs in 30d

Description

We compiled dr-elephant (customSHSWork branch), and deployed it on our hadoop yarn cluster for test, we tried both REST api SparkFetcher and spark.fetchers.FSFetcher and failed to load recent jobs (mapreduce jobs can be successfully loaded). Look forward to any tips. Thanks!

here is the log:

```
04-11-2018 15:47:09 INFO [ForkJoinPool-3-worker-57] com.linkedin.drelephant.spark.fetchers.SparkRestClient : creating SparkApplication by calling REST API at http://myhost:23764/api/v1/applications/application_1521785315204_12497/logs to get eventlogs
04-11-2018 15:47:09 INFO [dr-el-executor-thread-0] com.linkedin.drelephant.spark.fetchers.SparkFetcher : Succeeded fetching data for application_1521785315204_12497
**04-11-2018 15:47:09 ERROR [dr-el-executor-thread-0] com.linkedin.drelephant.ElephantRunner : None.get
04-11-2018 15:47:09 ERROR [dr-el-executor-thread-0] com.linkedin.drelephant.ElephantRunner : java.util.NoSuchElementException: None.get
at scala.None$.get(Option.scala:313)
at scala.None$.get(Option.scala:311)
at** com.linkedin.drelephant.spark.heuristics.StagesWithFailedTasksHeuristic$Evaluator$$anonfun$getErrorsSeverity$1.apply(StagesWithFailedTasksHeuristic.scala:83)
at com.linkedin.drelephant.spark.heuristics.StagesWithFailedTasksHeuristic$Evaluator$$anonfun$getErrorsSeverity$1.apply(StagesWithFailedTasksHeuristic.scala:79)
at scala.collection.immutable.List.foreach(List.scala:318)
at com.linkedin.drelephant.spark.heuristics.StagesWithFailedTasksHeuristic$Evaluator.getErrorsSeverity(StagesWithFailedTasksHeuristic.scala:79)
at com.linkedin.drelephant.spark.heuristics.StagesWithFailedTasksHeuristic$Evaluator.x$1$lzycompute(StagesWithFailedTasksHeuristic.scala:143)
at com.linkedin.drelephant.spark.heuristics.StagesWithFailedTasksHeuristic$Evaluator.x$1(StagesWithFailedTasksHeuristic.scala:143)
at com.linkedin.drelephant.spark.heuristics.StagesWithFailedTasksHeuristic$Evaluator.stagesWithOOMError$lzycompute(StagesWithFailedTasksHeuristic.scala:143)
at com.linkedin.drelephant.spark.heuristics.StagesWithFailedTasksHeuristic$Evaluator.stagesWithOOMError(StagesWithFailedTasksHeuristic.scala:143)
at com.linkedin.drelephant.spark.heuristics.StagesWithFailedTasksHeuristic.apply(StagesWithFailedTasksHeuristic.scala:42)
at com.linkedin.drelephant.spark.heuristics.StagesWithFailedTasksHeuristic.apply(StagesWithFailedTasksHeuristic.scala:31)
at com.linkedin.drelephant.analysis.AnalyticJob.getAnalysis(AnalyticJob.java:265)
at com.linkedin.drelephant.ElephantRunner$ExecutorJob.run(ElephantRunner.java:175)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
```

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with spark.heuristics.StagesWithFailedTasksHeuristic.scala at line 83 and trace the None value reached after SparkFetcher reports success. Compare the REST API SparkFetcher and spark.fetchers.FSFetcher paths for the Spark 1.6 history application. Done means the application is analyzed without the reported None.get failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
hadoop, java, scala, spark
Domain
backend, data-engineering, distributed-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.