Skip to content

Commit d0bf938

Browse files
srowenAndrew Or
authored andcommitted
SPARK-4579 [WEBUI] Scheduling Delay appears negative
Ensure scheduler delay handles unfinished task case, and ensure delay is never negative even due to rounding Author: Sean Owen <[email protected]> Closes #4796 from srowen/SPARK-4579 and squashes the following commits: ad6713c [Sean Owen] Ensure scheduler delay handles unfinished task case, and ensure delay is never negative even due to rounding
1 parent 58b3aa6 commit d0bf938

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

core/src/main/scala/org/apache/spark/ui/jobs/StagePage.scala

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -501,15 +501,16 @@ private[ui] class StagePage(parent: StagesTab) extends WebUIPage("stage") {
501501
}
502502

503503
private def getSchedulerDelay(info: TaskInfo, metrics: TaskMetrics): Long = {
504-
val totalExecutionTime = {
505-
if (info.gettingResultTime > 0) {
506-
(info.gettingResultTime - info.launchTime)
504+
val totalExecutionTime =
505+
if (info.gettingResult) {
506+
info.gettingResultTime - info.launchTime
507+
} else if (info.finished) {
508+
info.finishTime - info.launchTime
507509
} else {
508-
(info.finishTime - info.launchTime)
510+
0
509511
}
510-
}
511512
val executorOverhead = (metrics.executorDeserializeTime +
512513
metrics.resultSerializationTime)
513-
totalExecutionTime - metrics.executorRunTime - executorOverhead
514+
math.max(0, totalExecutionTime - metrics.executorRunTime - executorOverhead)
514515
}
515516
}

0 commit comments

Comments
 (0)