Skip to content
Snippets Groups Projects
Commit d3b1af4b authored by Tor Myklebust's avatar Tor Myklebust
Browse files

Add a serialisation time column to the StagePage.

parent 717c7fdd
No related branches found
No related tags found
No related merge requests found
...@@ -86,7 +86,7 @@ private[spark] class StagePage(parent: JobProgressUI) { ...@@ -86,7 +86,7 @@ private[spark] class StagePage(parent: JobProgressUI) {
val taskHeaders: Seq[String] = val taskHeaders: Seq[String] =
Seq("Task Index", "Task ID", "Status", "Locality Level", "Executor", "Launch Time") ++ Seq("Task Index", "Task ID", "Status", "Locality Level", "Executor", "Launch Time") ++
Seq("Duration", "GC Time") ++ Seq("Duration", "GC Time", "Result Ser Time") ++
{if (hasShuffleRead) Seq("Shuffle Read") else Nil} ++ {if (hasShuffleRead) Seq("Shuffle Read") else Nil} ++
{if (hasShuffleWrite) Seq("Write Time", "Shuffle Write") else Nil} ++ {if (hasShuffleWrite) Seq("Write Time", "Shuffle Write") else Nil} ++
Seq("Errors") Seq("Errors")
...@@ -189,6 +189,7 @@ private[spark] class StagePage(parent: JobProgressUI) { ...@@ -189,6 +189,7 @@ private[spark] class StagePage(parent: JobProgressUI) {
val formatDuration = if (info.status == "RUNNING") parent.formatDuration(duration) val formatDuration = if (info.status == "RUNNING") parent.formatDuration(duration)
else metrics.map(m => parent.formatDuration(m.executorRunTime)).getOrElse("") else metrics.map(m => parent.formatDuration(m.executorRunTime)).getOrElse("")
val gcTime = metrics.map(m => m.jvmGCTime).getOrElse(0L) val gcTime = metrics.map(m => m.jvmGCTime).getOrElse(0L)
val serializationTime = metrics.map(m => m.resultSerializationTime).getOrElse(0L)
val maybeShuffleRead = metrics.flatMap{m => m.shuffleReadMetrics}.map{s => s.remoteBytesRead} val maybeShuffleRead = metrics.flatMap{m => m.shuffleReadMetrics}.map{s => s.remoteBytesRead}
val shuffleReadSortable = maybeShuffleRead.map(_.toString).getOrElse("") val shuffleReadSortable = maybeShuffleRead.map(_.toString).getOrElse("")
...@@ -216,6 +217,9 @@ private[spark] class StagePage(parent: JobProgressUI) { ...@@ -216,6 +217,9 @@ private[spark] class StagePage(parent: JobProgressUI) {
<td sorttable_customkey={gcTime.toString}> <td sorttable_customkey={gcTime.toString}>
{if (gcTime > 0) parent.formatDuration(gcTime) else ""} {if (gcTime > 0) parent.formatDuration(gcTime) else ""}
</td> </td>
<td sorttable_customkey={serializationTime.toString}>
{if (serializationTime > 0) parent.formatDuration(serializationTime) else ""}
</td>
{if (shuffleRead) { {if (shuffleRead) {
<td sorttable_customkey={shuffleReadSortable}> <td sorttable_customkey={shuffleReadSortable}>
{shuffleReadReadable} {shuffleReadReadable}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment