dongjoon-hyun commented on a change in pull request #35373:
URL: https://github.com/apache/spark/pull/35373#discussion_r796147629



##########
File path: 
resource-managers/kubernetes/core/src/test/scala/org/apache/spark/scheduler/cluster/k8s/ExecutorRollPluginSuite.scala
##########
@@ -172,10 +174,53 @@ class ExecutorRollPluginSuite extends SparkFunSuite with 
PrivateMethodTester {
       plugin.invokePrivate(_choose(list, ExecutorRollPolicy.AVERAGE_DURATION)))
   }
 
-  test("Policy: OUTLIER - Work like TOTAL_DURATION if there is no outlier") {
+  test("Policy: OUTLIER_OR_TOTAL_DURATION - Use TOTAL_DURATION if there is no 
outlier") {
     assertEquals(
       plugin.invokePrivate(_choose(list, ExecutorRollPolicy.TOTAL_DURATION)),
-      plugin.invokePrivate(_choose(list, ExecutorRollPolicy.OUTLIER)))
+      plugin.invokePrivate(_choose(list, 
ExecutorRollPolicy.OUTLIER_OR_TOTAL_DURATION)))
+  }
+
+  test("Policy: OUTLIER_OR_TOTAL_DURATION - Detect an average task duration 
outlier") {
+    val outlier = new ExecutorSummary("9999", "host:port", true, 1,
+      0, 0, 1, 0, 0,
+      3, 0, 1, 300,
+      20, 0, 0,
+      0, false, 0, new Date(1639300001000L),
+      Option.empty, Option.empty, Map(), Option.empty, Set(), Option.empty, 
Map(), Map(), 1,
+      false, Set())
+    assertEquals(
+      plugin.invokePrivate(_choose(list :+ outlier, 
ExecutorRollPolicy.AVERAGE_DURATION)),
+      plugin.invokePrivate(_choose(list :+ outlier, 
ExecutorRollPolicy.OUTLIER_OR_TOTAL_DURATION)))
+  }
+
+  test("Policy: OUTLIER_OR_TOTAL_DURATION - Detect a total task duration 
outlier") {
+    val outlier = new ExecutorSummary("9999", "host:port", true, 1,
+      0, 0, 1, 0, 0,
+      3, 0, 1000, 1000,
+      0, 0, 0,
+      0, false, 0, new Date(1639300001000L),
+      Option.empty, Option.empty, Map(), Option.empty, Set(), Option.empty, 
Map(), Map(), 1,
+      false, Set())
+    assertEquals(
+      plugin.invokePrivate(_choose(list :+ outlier, 
ExecutorRollPolicy.TOTAL_DURATION)),
+      plugin.invokePrivate(_choose(list :+ outlier, 
ExecutorRollPolicy.OUTLIER_OR_TOTAL_DURATION)))
+  }
+
+  test("Policy: OUTLIER_OR_TOTAL_DURATION - Detect a total GC time outlier") {
+    val outlier = new ExecutorSummary("9999", "host:port", true, 1,
+      0, 0, 1, 0, 0,
+      3, 0, 1, 100,
+      1000, 0, 0,
+      0, false, 0, new Date(1639300001000L),
+      Option.empty, Option.empty, Map(), Option.empty, Set(), Option.empty, 
Map(), Map(), 1,
+      false, Set())
+    assertEquals(
+      plugin.invokePrivate(_choose(list :+ outlier, 
ExecutorRollPolicy.TOTAL_GC_TIME)),
+      plugin.invokePrivate(_choose(list :+ outlier, 
ExecutorRollPolicy.OUTLIER_OR_TOTAL_DURATION)))
+  }
+
+  test("Policy: OUTLIER - Return None if not outliers") {

Review comment:
       `not outliers` -> `there is no outlier`.




-- 
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.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to