You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by bm...@apache.org on 2018/02/12 23:31:27 UTC
[4/5] mesos git commit: Fixed two slave recovery tests.
Fixed two slave recovery tests.
These two tests are affected by the lingering executor fix
(#65109). We should wait to make sure tasks are actually launched
on the executor before trigger the agent failover. Otherwise, the
container will be shutdown upon re-registration because the executor
has never received any task.
Review: https://reviews.apache.org/r/65572/
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/320efb5a
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/320efb5a
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/320efb5a
Branch: refs/heads/1.3.x
Commit: 320efb5aa24113b6056adfc1fd2ceb496e179038
Parents: d85fb56
Author: Meng Zhu <mz...@mesosphere.io>
Authored: Thu Feb 8 17:19:48 2018 -0800
Committer: Benjamin Mahler <bm...@apache.org>
Committed: Mon Feb 12 15:24:24 2018 -0800
----------------------------------------------------------------------
src/tests/slave_recovery_tests.cpp | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/mesos/blob/320efb5a/src/tests/slave_recovery_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/slave_recovery_tests.cpp b/src/tests/slave_recovery_tests.cpp
index 4f5a6a2..331c129 100644
--- a/src/tests/slave_recovery_tests.cpp
+++ b/src/tests/slave_recovery_tests.cpp
@@ -4145,7 +4145,11 @@ TEST_F(MesosContainerizerSlaveRecoveryTest, CGROUPS_ROOT_PidNamespaceForward)
// Scheduler expectations.
EXPECT_CALL(sched, registered(_, _, _));
+ Future<TaskStatus> statusStarting;
+ Future<TaskStatus> statusRunning;
EXPECT_CALL(sched, statusUpdate(_, _))
+ .WillOnce(FutureArg<1>(&statusStarting))
+ .WillOnce(FutureArg<1>(&statusRunning))
.WillRepeatedly(Return());
Future<vector<Offer>> offers1;
@@ -4177,6 +4181,13 @@ TEST_F(MesosContainerizerSlaveRecoveryTest, CGROUPS_ROOT_PidNamespaceForward)
ContainerID containerId = *(containers->begin());
+ // Wait until task is running.
+ AWAIT_READY(statusStarting);
+ EXPECT_EQ(TASK_STARTING, statusStarting->state());
+
+ AWAIT_READY(statusRunning);
+ EXPECT_EQ(TASK_RUNNING, statusRunning->state());
+
// Stop the slave.
slave.get()->terminate();
@@ -4249,7 +4260,11 @@ TEST_F(MesosContainerizerSlaveRecoveryTest, CGROUPS_ROOT_PidNamespaceBackward)
// Scheduler expectations.
EXPECT_CALL(sched, registered(_, _, _));
+ Future<TaskStatus> statusStarting;
+ Future<TaskStatus> statusRunning;
EXPECT_CALL(sched, statusUpdate(_, _))
+ .WillOnce(FutureArg<1>(&statusStarting))
+ .WillOnce(FutureArg<1>(&statusRunning))
.WillRepeatedly(Return());
Future<vector<Offer>> offers1;
@@ -4281,6 +4296,13 @@ TEST_F(MesosContainerizerSlaveRecoveryTest, CGROUPS_ROOT_PidNamespaceBackward)
ContainerID containerId = *(containers->begin());
+ // Wait until task is running.
+ AWAIT_READY(statusStarting);
+ EXPECT_EQ(TASK_STARTING, statusStarting->state());
+
+ AWAIT_READY(statusRunning);
+ EXPECT_EQ(TASK_RUNNING, statusRunning->state());
+
// Stop the slave.
slave.get()->terminate();