Skip to content

Commit b83a93e

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 (cherry picked from commit fbc4694) Signed-off-by: Andrew Or <[email protected]>
1 parent 5b426cb commit b83a93e

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
@@ -626,15 +626,16 @@ private[ui] class StagePage(parent: StagesTab) extends WebUIPage("stage") {
626626
}
627627

628628
private def getSchedulerDelay(info: TaskInfo, metrics: TaskMetrics): Long = {
629-
val totalExecutionTime = {
630-
if (info.gettingResultTime > 0) {
631-
(info.gettingResultTime - info.launchTime)
629+
val totalExecutionTime =
630+
if (info.gettingResult) {
631+
info.gettingResultTime - info.launchTime
632+
} else if (info.finished) {
633+
info.finishTime - info.launchTime
632634
} else {
633-
(info.finishTime - info.launchTime)
635+
0
634636
}
635-
}
636637
val executorOverhead = (metrics.executorDeserializeTime +
637638
metrics.resultSerializationTime)
638-
totalExecutionTime - metrics.executorRunTime - executorOverhead
639+
math.max(0, totalExecutionTime - metrics.executorRunTime - executorOverhead)
639640
}
640641
}

0 commit comments

Comments
 (0)