srowen commented on a change in pull request #26263: [SPARK-29570][WEBUI]
Improve tooltip for Executor Tab for Shuffle Write,Blacklisted,Logs,Threaddump
columns
URL: https://github.com/apache/spark/pull/26263#discussion_r343378994
##########
File path: core/src/main/scala/org/apache/spark/ui/jobs/StageTable.scala
##########
@@ -179,41 +179,32 @@ private[ui] class StagePagedTable(
// stageHeadersAndCssClasses has three parts: header title, tooltip
information, and sortable.
// The tooltip information could be None, which indicates it does not have
a tooltip.
// Otherwise, it has two parts: tooltip text, and position (true for left,
false for default).
- val stageHeadersAndCssClasses: Seq[(String, Option[(String, Boolean)],
Boolean)] =
- Seq(("Stage Id", None, true)) ++
- {if (isFairScheduler) {Seq(("Pool Name", None, true))} else Seq.empty} ++
+ val stageHeadersAndCssClasses: Seq[(String, String, Boolean)] =
+ Seq(("Stage Id", null, true)) ++
+ {if (isFairScheduler) {Seq(("Pool Name", null, true))} else Seq.empty} ++
Seq(
- ("Description", None, true), ("Submitted", None, true), ("Duration",
None, true),
- ("Tasks: Succeeded/Total", None, false),
- ("Input", Some((ToolTips.INPUT, false)), true),
- ("Output", Some((ToolTips.OUTPUT, false)), true),
- ("Shuffle Read", Some((ToolTips.SHUFFLE_READ, false)), true),
- ("Shuffle Write", Some((ToolTips.SHUFFLE_WRITE, true)), true)
+ ("Description", null, true), ("Submitted", null, true), ("Duration",
null, true),
+ ("Tasks: Succeeded/Total", null, false),
+ ("Input", ToolTips.INPUT, true),
+ ("Output", ToolTips.OUTPUT, true),
+ ("Shuffle Read", ToolTips.SHUFFLE_READ, true),
+ ("Shuffle Write", ToolTips.SHUFFLE_WRITE, true)
) ++
- {if (isFailedStage) {Seq(("Failure Reason", None, false))} else
Seq.empty}
+ {if (isFailedStage) {Seq(("Failure Reason", null, false))} else
Seq.empty}
if
(!stageHeadersAndCssClasses.filter(_._3).map(_._1).contains(sortColumn)) {
throw new IllegalArgumentException(s"Unknown column: $sortColumn")
}
val headerRow: Seq[Node] = {
stageHeadersAndCssClasses.map { case (header, tooltip, sortable) =>
- val headerSpan = tooltip.map { case (title, left) =>
- if (left) {
- /* Place the shuffle write tooltip on the left (rather than the
default position
- of on top) because the shuffle write column is the last column on
the right side and
- the tooltip is wider than the column, so it doesn't fit on top. */
- <span data-toggle="tooltip" data-placement="left" title={title}>
+ val headerSpan = if (null != tooltip && !tooltip.isEmpty) {
+ <span data-toggle="tooltip" data-placement="top" title={tooltip}>
Review comment:
This is an example of a case where the placement appears to be on purpose.
How does this look before and after?
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]