You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by vi...@apache.org on 2014/01/15 23:02:26 UTC

[5/5] git commit: GroupProcess::abort() now also sets all owned memberships as cancelled.

GroupProcess::abort() now also sets all owned memberships as cancelled.

From: Jiang Yan Xu <ya...@jxu.me>
Review: https://reviews.apache.org/r/16591


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

Branch: refs/heads/master
Commit: bef47009015b976be0a73b013d77b9ce9505a463
Parents: 682b0d9
Author: Vinod Kone <vi...@twitter.com>
Authored: Wed Jan 15 12:54:10 2014 -0800
Committer: Vinod Kone <vi...@twitter.com>
Committed: Wed Jan 15 12:54:58 2014 -0800

----------------------------------------------------------------------
 src/zookeeper/group.cpp | 8 ++++++++
 1 file changed, 8 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/bef47009/src/zookeeper/group.cpp
----------------------------------------------------------------------
diff --git a/src/zookeeper/group.cpp b/src/zookeeper/group.cpp
index 47d599d..e21dc6f 100644
--- a/src/zookeeper/group.cpp
+++ b/src/zookeeper/group.cpp
@@ -848,6 +848,14 @@ void GroupProcess::abort(const string& message)
   fail(&pending.datas, message);
   fail(&pending.watches, message);
 
+  // Set all owned memberships as cancelled.
+  foreachvalue (Promise<bool>* cancelled, owned) {
+    cancelled->set(false); // Since this was not requested.
+    delete cancelled;
+  }
+
+  owned.clear();
+
   // Since we decided to abort, we expire the session to clean up
   // ephemeral ZNodes as necessary.
   delete CHECK_NOTNULL(zk);