Repository: mesos
Updated Branches:
  refs/heads/master 5442cad09 -> b1dbc63f3


Fixed flakiness in PersistentVolumeTest.AccessPersistentVolume.

Review: https://reviews.apache.org/r/45818/


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/b1dbc63f
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/b1dbc63f
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/b1dbc63f

Branch: refs/heads/master
Commit: b1dbc63f374174a4b0bb418e1fa21fa76366dffc
Parents: 365c326
Author: Neil Conway <neil.con...@gmail.com>
Authored: Wed Apr 6 16:20:29 2016 -0700
Committer: Jie Yu <yujie....@gmail.com>
Committed: Wed Apr 6 16:20:40 2016 -0700

----------------------------------------------------------------------
 src/tests/persistent_volume_tests.cpp | 13 +++++++++++++
 1 file changed, 13 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/b1dbc63f/src/tests/persistent_volume_tests.cpp
----------------------------------------------------------------------
diff --git a/src/tests/persistent_volume_tests.cpp 
b/src/tests/persistent_volume_tests.cpp
index ade1c08..d246f35 100644
--- a/src/tests/persistent_volume_tests.cpp
+++ b/src/tests/persistent_volume_tests.cpp
@@ -782,6 +782,12 @@ TEST_P(PersistentVolumeTest, AccessPersistentVolume)
     .WillOnce(FutureArg<1>(&status1))
     .WillOnce(FutureArg<1>(&status2));
 
+  Future<Nothing> statusUpdateAcknowledgement1 =
+    FUTURE_DISPATCH(slave.get()->pid, &Slave::_statusUpdateAcknowledgement);
+
+  Future<Nothing> statusUpdateAcknowledgement2 =
+    FUTURE_DISPATCH(slave.get()->pid, &Slave::_statusUpdateAcknowledgement);
+
   driver.acceptOffers(
       {offer.id()},
       {CREATE(volume),
@@ -820,6 +826,13 @@ TEST_P(PersistentVolumeTest, AccessPersistentVolume)
 
   EXPECT_SOME_EQ("abc\n", os::read(filePath1));
 
+  // Ensure that the slave has received the acknowledgment of the
+  // TASK_FINISHED status update; this implies the acknowledgement
+  // reached the master, which is necessary for the task's resources
+  // to be recovered by the allocator.
+  AWAIT_READY(statusUpdateAcknowledgement1);
+  AWAIT_READY(statusUpdateAcknowledgement2);
+
   // Expect an offer containing the persistent volume.
   EXPECT_CALL(sched, resourceOffers(&driver, _))
     .WillOnce(FutureArg<1>(&offers))

Reply via email to