[SPARK-7519] [SQL] fix minor bugs in thrift server UI
Bugs description:
1. There are extra commas on the top of session list.
2. The format of time in "Start at:" part is not the same as others.
3. The total number of online sessions is wrong.
Author: tianyi <tianyi.asiainfo@gmail.com>
Closes #6048 from tianyi/SPARK-7519 and squashes the following commits:
ed366b7 [tianyi] fix bug
(cherry picked from commit 2242ab31e9
)
Signed-off-by: Cheng Lian <lian@databricks.com>
This commit is contained in:
parent
5f227fdbfe
commit
fff3c86b06
|
@ -147,7 +147,7 @@ object HiveThriftServer2 extends Logging {
|
|||
override def onApplicationEnd(applicationEnd: SparkListenerApplicationEnd): Unit = {
|
||||
server.stop()
|
||||
}
|
||||
|
||||
var onlineSessionNum: Int = 0
|
||||
val sessionList = new mutable.LinkedHashMap[String, SessionInfo]
|
||||
val executionList = new mutable.LinkedHashMap[String, ExecutionInfo]
|
||||
val retainedStatements =
|
||||
|
@ -170,11 +170,13 @@ object HiveThriftServer2 extends Logging {
|
|||
def onSessionCreated(ip: String, sessionId: String, userName: String = "UNKNOWN"): Unit = {
|
||||
val info = new SessionInfo(sessionId, System.currentTimeMillis, ip, userName)
|
||||
sessionList.put(sessionId, info)
|
||||
onlineSessionNum += 1
|
||||
trimSessionIfNecessary()
|
||||
}
|
||||
|
||||
def onSessionClosed(sessionId: String): Unit = {
|
||||
sessionList(sessionId).finishTimestamp = System.currentTimeMillis
|
||||
onlineSessionNum -= 1
|
||||
}
|
||||
|
||||
def onStatementStart(
|
||||
|
|
|
@ -29,7 +29,7 @@ import org.apache.spark.ui.UIUtils._
|
|||
import org.apache.spark.ui._
|
||||
|
||||
|
||||
/** Page for Spark Web UI that shows statistics of a streaming job */
|
||||
/** Page for Spark Web UI that shows statistics of a thrift server */
|
||||
private[ui] class ThriftServerPage(parent: ThriftServerTab) extends WebUIPage("") with Logging {
|
||||
|
||||
private val listener = parent.listener
|
||||
|
@ -42,7 +42,7 @@ private[ui] class ThriftServerPage(parent: ThriftServerTab) extends WebUIPage(""
|
|||
generateBasicStats() ++
|
||||
<br/> ++
|
||||
<h4>
|
||||
{listener.sessionList.size} session(s) are online,
|
||||
{listener.onlineSessionNum} session(s) are online,
|
||||
running {listener.totalRunning} SQL statement(s)
|
||||
</h4> ++
|
||||
generateSessionStatsTable() ++
|
||||
|
@ -50,12 +50,12 @@ private[ui] class ThriftServerPage(parent: ThriftServerTab) extends WebUIPage(""
|
|||
UIUtils.headerSparkPage("ThriftServer", content, parent, Some(5000))
|
||||
}
|
||||
|
||||
/** Generate basic stats of the streaming program */
|
||||
/** Generate basic stats of the thrift server program */
|
||||
private def generateBasicStats(): Seq[Node] = {
|
||||
val timeSinceStart = System.currentTimeMillis() - startTime.getTime
|
||||
<ul class ="unstyled">
|
||||
<li>
|
||||
<strong>Started at: </strong> {startTime.toString}
|
||||
<strong>Started at: </strong> {formatDate(startTime)}
|
||||
</li>
|
||||
<li>
|
||||
<strong>Time since start: </strong>{formatDurationVerbose(timeSinceStart)}
|
||||
|
@ -148,7 +148,7 @@ private[ui] class ThriftServerPage(parent: ThriftServerTab) extends WebUIPage(""
|
|||
<tr>
|
||||
<td> {session.userName} </td>
|
||||
<td> {session.ip} </td>
|
||||
<td> <a href={sessionLink}> {session.sessionId} </a> </td>,
|
||||
<td> <a href={sessionLink}> {session.sessionId} </a> </td>
|
||||
<td> {formatDate(session.startTimestamp)} </td>
|
||||
<td> {if(session.finishTimestamp > 0) formatDate(session.finishTimestamp)} </td>
|
||||
<td> {formatDurationOption(Some(session.totalTime))} </td>
|
||||
|
|
Loading…
Reference in a new issue