afterincomparableyum commented on code in PR #3698:
URL: https://github.com/apache/celeborn/pull/3698#discussion_r3300173318
##########
worker/src/test/scala/org/apache/celeborn/service/deploy/worker/WorkerStatusManagerSuite.scala:
##########
@@ -57,24 +57,50 @@ class WorkerStatusManagerSuite extends AnyFunSuite {
statusManager.init(worker)
statusManager.doTransition(WorkerEventType.DecommissionThenIdle)
- Assert.assertEquals(statusManager.getWorkerState(),
PbWorkerStatus.State.InDecommissionThenIdle)
+ Assert.assertEquals(PbWorkerStatus.State.InDecommissionThenIdle,
statusManager.getWorkerState())
Assert.assertEquals(
- worker.workerInfo.getWorkerStatus().getStateValue,
- PbWorkerStatus.State.InDecommissionThenIdle.getNumber)
+ PbWorkerStatus.State.InDecommissionThenIdle.getNumber,
+ worker.workerInfo.getWorkerStatus().getStateValue)
// Rerun state Transition
statusManager.doTransition(WorkerEventType.DecommissionThenIdle)
- Assert.assertEquals(statusManager.getWorkerState(),
PbWorkerStatus.State.InDecommissionThenIdle)
+ Assert.assertEquals(PbWorkerStatus.State.InDecommissionThenIdle,
statusManager.getWorkerState())
// Reset shuffleKeys
shuffleKeys.clear()
statusManager.doTransition(WorkerEventType.DecommissionThenIdle)
- Assert.assertEquals(statusManager.getWorkerState(),
PbWorkerStatus.State.Idle)
+ Assert.assertEquals(PbWorkerStatus.State.Idle,
statusManager.getWorkerState())
statusManager.doTransition(WorkerEventType.Recommission)
- Assert.assertEquals(statusManager.getWorkerState(),
PbWorkerStatus.State.Normal)
+ Assert.assertEquals(PbWorkerStatus.State.Normal,
statusManager.getWorkerState())
statusManager.doTransition(WorkerEventType.Recommission)
- Assert.assertEquals(statusManager.getWorkerState(),
PbWorkerStatus.State.Normal)
+ Assert.assertEquals(PbWorkerStatus.State.Normal,
statusManager.getWorkerState())
+ }
+
+ test("Test exitEventType initialization based on config") {
+ // Default: neither graceful nor decommission → Immediately
+ val conf1 = new CelebornConf()
+ val mgr1 = new WorkerStatusManager(conf1)
+ Assert.assertEquals(WorkerEventType.Immediately, mgr1.exitEventType)
+
+ // Graceful shutdown only → Graceful
+ val conf2 = new CelebornConf()
+ conf2.set("celeborn.worker.graceful.shutdown.enabled", "true")
+ val mgr2 = new WorkerStatusManager(conf2)
+ Assert.assertEquals(WorkerEventType.Graceful, mgr2.exitEventType)
+
+ // Decommission shutdown only → Decommission
+ val conf3 = new CelebornConf()
+ conf3.set("celeborn.worker.decommission.shutdown.enabled", "true")
+ val mgr3 = new WorkerStatusManager(conf3)
+ Assert.assertEquals(WorkerEventType.Decommission, mgr3.exitEventType)
+
+ // Both enabled → Decommission overrides graceful
+ val conf4 = new CelebornConf()
+ conf4.set("celeborn.worker.graceful.shutdown.enabled", "true")
+ conf4.set("celeborn.worker.decommission.shutdown.enabled", "true")
+ val mgr4 = new WorkerStatusManager(conf4)
+ Assert.assertEquals(WorkerEventType.Decommission, mgr4.exitEventType)
Review Comment:
NIT: can we add these too pls:
Assert.assertFalse(conf4.workerGracefulShutdownEnabled)
Assert.assertTrue(conf4.workerDecommissionShutdownEnabled)
--
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]