amanomer commented on a change in pull request #26454: [SPARK-29818][MLLIB] Missing persist on RDD URL: https://github.com/apache/spark/pull/26454#discussion_r345890498
########## File path: mllib/src/main/scala/org/apache/spark/mllib/evaluation/BinaryClassificationMetrics.scala ########## @@ -165,13 +166,17 @@ class BinaryClassificationMetrics @Since("3.0.0") ( confusions: RDD[(Double, BinaryConfusionMatrix)]) = { // Create a bin for each distinct score value, count weighted positives and // negatives within each bin, and then sort by score values in descending order. - val counts = scoreLabelsWeight.combineByKey( + val binnedWeights = scoreLabelsWeight.combineByKey( createCombiner = (labelAndWeight: (Double, Double)) => new BinaryLabelCounter(0.0, 0.0) += (labelAndWeight._1, labelAndWeight._2), mergeValue = (c: BinaryLabelCounter, labelAndWeight: (Double, Double)) => c += (labelAndWeight._1, labelAndWeight._2), mergeCombiners = (c1: BinaryLabelCounter, c2: BinaryLabelCounter) => c1 += c2 - ).sortByKey(ascending = false) + ) + if (scoreLabelsWeight.getStorageLevel != StorageLevel.NONE) { + binnedWeights.persist() + } + val counts = binnedWeights.sortByKey(ascending = false) Review comment: `binnedCounts` is a child RDD of `binnedWeights`. And here one action `sortByKey` is performed on `binnedWeights`. ---------------------------------------------------------------- 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: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org