Github user vanzin commented on a diff in the pull request:

    https://github.com/apache/spark/pull/17747#discussion_r127022304
  
    --- Diff: 
core/src/main/scala/org/apache/spark/deploy/history/FsHistoryProvider.scala ---
    @@ -240,43 +253,52 @@ private[history] class FsHistoryProvider(conf: 
SparkConf, clock: Clock)
       override def getLastUpdatedTime(): Long = lastScanTime.get()
     
       override def getAppUI(appId: String, attemptId: Option[String]): 
Option[LoadedAppUI] = {
    -    try {
    -      applications.get(appId).flatMap { appInfo =>
    -        appInfo.attempts.find(_.attemptId == attemptId).flatMap { attempt 
=>
    -          val replayBus = new ReplayListenerBus()
    -          val ui = {
    -            val conf = this.conf.clone()
    -            val appSecManager = new SecurityManager(conf)
    -            SparkUI.createHistoryUI(conf, replayBus, appSecManager, 
appInfo.name,
    -              HistoryServer.getAttemptURI(appId, attempt.attemptId),
    -              attempt.startTime)
    -            // Do not call ui.bind() to avoid creating a new server for 
each application
    -          }
    -
    -          val fileStatus = fs.getFileStatus(new Path(logDir, 
attempt.logPath))
    -
    -          val appListener = replay(fileStatus, 
isApplicationCompleted(fileStatus), replayBus)
    -
    -          if (appListener.appId.isDefined) {
    -            ui.appSparkVersion = appListener.appSparkVersion.getOrElse("")
    -            ui.getSecurityManager.setAcls(HISTORY_UI_ACLS_ENABLE)
    -            // make sure to set admin acls before view acls so they are 
properly picked up
    -            val adminAcls = HISTORY_UI_ADMIN_ACLS + "," + 
appListener.adminAcls.getOrElse("")
    -            ui.getSecurityManager.setAdminAcls(adminAcls)
    -            ui.getSecurityManager.setViewAcls(attempt.sparkUser, 
appListener.viewAcls.getOrElse(""))
    -            val adminAclsGroups = HISTORY_UI_ADMIN_ACLS_GROUPS + "," +
    -              appListener.adminAclsGroups.getOrElse("")
    -            ui.getSecurityManager.setAdminAclsGroups(adminAclsGroups)
    -            
ui.getSecurityManager.setViewAclsGroups(appListener.viewAclsGroups.getOrElse(""))
    -            Some(LoadedAppUI(ui, updateProbe(appId, attemptId, 
attempt.fileSize)))
    -          } else {
    -            None
    +    metrics.appUILoadCount.inc()
    +    time(metrics.appUiLoadTimer, Some(metrics.appUITotalLoadTime)) {
    --- End diff --
    
    So, I've commented on these kinds of metrics numerous times in this and in 
the previous version of this PR... but can you explain exactly how this metric 
is useful in any way?
    
    Every application is different, so the average time to load the app's UI is 
pretty useless, since it will vary wildly.


---
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 infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to