This is an automated email from the ASF dual-hosted git repository.

bbannier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/mesos.git

commit fe7be9701e92d863734621ae1a3d339bb8598044
Author: Benjamin Bannier <[email protected]>
AuthorDate: Wed Jun 26 11:54:20 2019 +0200

    Sped up `SlaveTest.KillQueuedTaskDuringExecutorRegistration`.
    
    This patch switches `SlaveTest.KillQueuedTaskDuringExecutorRegistration`
    to manual clock management with paused clock and manual clock advance.
    This speeds up the test by >25x from >5s to <200ms on my machine in a
    not-optimized build.
    
    Review: https://reviews.apache.org/r/70935/
---
 src/tests/slave_tests.cpp | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/src/tests/slave_tests.cpp b/src/tests/slave_tests.cpp
index c203597..7ba2df9 100644
--- a/src/tests/slave_tests.cpp
+++ b/src/tests/slave_tests.cpp
@@ -4300,6 +4300,8 @@ TEST_F(SlaveTest, KillMultiplePendingTasks)
 // the executor.
 TEST_F(SlaveTest, KillQueuedTaskDuringExecutorRegistration)
 {
+  Clock::pause();
+
   // Start a master.
   Try<Owned<cluster::Master>> master = StartMaster();
   ASSERT_SOME(master);
@@ -4310,9 +4312,14 @@ TEST_F(SlaveTest, 
KillQueuedTaskDuringExecutorRegistration)
   Owned<MasterDetector> detector = master.get()->createDetector();
 
   // Start a slave.
-  Try<Owned<cluster::Slave>> slave = StartSlave(detector.get(), 
&containerizer);
+  slave::Flags slaveFlags = CreateSlaveFlags();
+  Try<Owned<cluster::Slave>> slave =
+    StartSlave(detector.get(), &containerizer, slaveFlags);
   ASSERT_SOME(slave);
 
+  Clock::advance(slaveFlags.authentication_backoff_factor);
+  Clock::settle();
+
   MockScheduler sched;
   MesosSchedulerDriver driver(
       &sched, DEFAULT_FRAMEWORK_INFO, master.get()->pid, DEFAULT_CREDENTIAL);
@@ -4376,6 +4383,8 @@ TEST_F(SlaveTest, 
KillQueuedTaskDuringExecutorRegistration)
                 slave.get()->pid,
                 registerExecutor);
 
+  Clock::advance(slaveFlags.executor_shutdown_grace_period);
+
   AWAIT_READY(executorLost);
 
   driver.stop();

Reply via email to