yabola commented on code in PR #37779:
URL: https://github.com/apache/spark/pull/37779#discussion_r985027861
##########
core/src/test/scala/org/apache/spark/executor/CoarseGrainedExecutorBackendSuite.scala:
##########
@@ -535,6 +538,40 @@ class CoarseGrainedExecutorBackendSuite extends
SparkFunSuite
}
}
+ /**
+ * A fatal error occurred when [[Executor]] was initialized, this should be
caught by
+ * [[SparkUncaughtExceptionHandler]] and [[Executor]] can exit by itself.
+ */
+ test("SPARK-40320 Executor should exit when initialization failed for fatal
error") {
+ new SparkUncaughtExceptionHandler
+ val conf = new SparkConf()
+ .setMaster("local-cluster[1, 1, 1024]")
+ .set(PLUGINS, Seq(classOf[FatalErrorPlugin].getName))
+ .setAppName("test")
+ sc = new SparkContext(conf)
+ val executorAddCounter = new AtomicInteger(0)
+ val executorRemovedCounter = new AtomicInteger(0)
+
+ val listener = new SparkListener() {
+ override def onExecutorAdded(executorAdded: SparkListenerExecutorAdded):
Unit = {
+ executorAddCounter.getAndIncrement()
+ }
+
+ override def onExecutorRemoved(executorRemoved:
SparkListenerExecutorRemoved): Unit = {
+ executorRemovedCounter.getAndIncrement()
+ }
+ }
+ try {
+ sc.addSparkListener(listener)
+ eventually(timeout(60.seconds)) {
Review Comment:
This test takes about 6s in MAC (total time include the start time) .
I make the timeout time longer here to hope that the UT will be more stable.
I guess when the machine load is heavy, the time-consuming time may become
longer.
I don't know if I need to worry about these, how about the modification to
15s
--
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]