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

    https://github.com/apache/spark/pull/22612#discussion_r234334930
  
    --- Diff: 
core/src/main/scala/org/apache/spark/executor/ExecutorMetrics.scala ---
    @@ -28,16 +28,14 @@ import org.apache.spark.metrics.ExecutorMetricType
     @DeveloperApi
     class ExecutorMetrics private[spark] extends Serializable {
     
    -  // Metrics are indexed by ExecutorMetricType.values
    -  private val metrics = new Array[Long](ExecutorMetricType.values.length)
    -
    +  private val metrics = new Array[Long](ExecutorMetricType.numMetrics)
       // the first element is initialized to -1, indicating that the values 
for the array
       // haven't been set yet.
       metrics(0) = -1
     
    -  /** Returns the value for the specified metricType. */
    -  def getMetricValue(metricType: ExecutorMetricType): Long = {
    -    metrics(ExecutorMetricType.metricIdxMap(metricType))
    +  /** Returns the value for the specified metric. */
    +  def getMetricValue(metricName: String): Long = {
    +    metrics(ExecutorMetricType.metricToOffset.get(metricName).get)
    --- End diff --
    
    no point in `metrics.get(...).get()`.  if its OK for this to throw an 
exception for a missing key, then just do `metrics(...)`, like before.


---

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

Reply via email to