Github user JoshRosen commented on a diff in the pull request:
https://github.com/apache/spark/pull/7808#discussion_r36046796
--- Diff:
core/src/main/scala/org/apache/spark/ui/exec/ExecutorThreadDumpPage.scala ---
@@ -49,11 +49,29 @@ private[ui] class ExecutorThreadDumpPage(parent:
ExecutorsTab) extends WebUIPage
val maybeThreadDump = sc.get.getExecutorThreadDump(executorId)
val content = maybeThreadDump.map { threadDump =>
- val dumpRows = threadDump.map { thread =>
+ val dumpRows = threadDump.sortWith {
+ case (threadTrace1, threadTrace2) => {
+ val v1 = if (threadTrace1.threadName.contains("Executor task
launch")) 1 else 0
+ val v2 = if (threadTrace2.threadName.contains("Executor task
launch")) 1 else 0
+ if (v1 == v2) {
+ threadTrace1.threadName > threadTrace2.threadName
--- End diff --
According to the ScalaDoc for `sortWith`, the function passed to `sortWith`
is
> the comparison function which tests whether its first argument precedes
its second argument in the desired ordering.
Here, I think that we want all executor threads to appear before any
non-executor thread. Within each group, I think that we intuitively want
alphabetical ordering, but here it looks like we're returning
reverse-alphabetical ordering. Therefore, I think that the `>` should actually
be a `<` here.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]