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 2013/12/06 00:37:08 UTC

[1/2] git commit: Fixed group to use 32 bit signed integers for sequence numbers.

Updated Branches:
  refs/heads/master cac2d3995 -> fa14ea423


Fixed group to use 32 bit signed integers for sequence numbers.

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


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

Branch: refs/heads/master
Commit: fa14ea4232733167783d10c765b5975645a0b7d8
Parents: 081a1ab
Author: Benjamin Mahler <bm...@twitter.com>
Authored: Thu Dec 5 13:38:57 2013 -0800
Committer: Benjamin Mahler <bm...@twitter.com>
Committed: Thu Dec 5 15:03:58 2013 -0800

----------------------------------------------------------------------
 src/zookeeper/group.cpp | 14 +++++++-------
 src/zookeeper/group.hpp | 10 +++++-----
 2 files changed, 12 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/fa14ea42/src/zookeeper/group.cpp
----------------------------------------------------------------------
diff --git a/src/zookeeper/group.cpp b/src/zookeeper/group.cpp
index 2ddc65e..5c92c5f 100644
--- a/src/zookeeper/group.cpp
+++ b/src/zookeeper/group.cpp
@@ -409,7 +409,7 @@ void GroupProcess::expired()
   memberships = None();
 
   // Set all owned memberships as cancelled.
-  foreachpair (uint64_t sequence, Promise<bool>* cancelled, utils::copy(owned)) {
+  foreachpair (int32_t sequence, Promise<bool>* cancelled, utils::copy(owned)) {
     cancelled->set(false); // Since this was not requested.
     owned.erase(sequence); // Okay since iterating over a copy.
     delete cancelled;
@@ -496,7 +496,7 @@ Result<Group::Membership> GroupProcess::doJoin(const string& data)
     return Error("Failed to get the sequence number: " + basename.error());
   }
 
-  Try<uint64_t> sequence = numify<uint64_t>(basename.get());
+  Try<int32_t> sequence = numify<int32_t>(basename.get());
   CHECK_SOME(sequence);
 
   Promise<bool>* cancelled = new Promise<bool>();
@@ -598,10 +598,10 @@ Try<bool> GroupProcess::cache()
   }
 
   // Convert results to sequence numbers.
-  set<uint64_t> sequences;
+  set<int32_t> sequences;
 
   foreach (const string& result, results) {
-    Try<uint64_t> sequence = numify<uint64_t>(result);
+    Try<int32_t> sequence = numify<int32_t>(result);
 
     // Skip it if it couldn't be converted to a number.
     if (sequence.isError()) {
@@ -616,7 +616,7 @@ Try<bool> GroupProcess::cache()
   // Cache current memberships, cancelling those that are now missing.
   set<Group::Membership> current;
 
-  foreachpair (uint64_t sequence, Promise<bool>* cancelled, utils::copy(owned)) {
+  foreachpair (int32_t sequence, Promise<bool>* cancelled, utils::copy(owned)) {
     if (sequences.count(sequence) == 0) {
       cancelled->set(false);
       owned.erase(sequence); // Okay since iterating over a copy.
@@ -627,7 +627,7 @@ Try<bool> GroupProcess::cache()
     }
   }
 
-  foreachpair (uint64_t sequence, Promise<bool>* cancelled, utils::copy(unowned)) {
+  foreachpair (int32_t sequence, Promise<bool>* cancelled, utils::copy(unowned)) {
     if (sequences.count(sequence) == 0) {
       cancelled->set(false);
       unowned.erase(sequence); // Okay since iterating over a copy.
@@ -639,7 +639,7 @@ Try<bool> GroupProcess::cache()
   }
 
   // Add any remaining (i.e., unexpected) sequences.
-  foreach (uint64_t sequence, sequences) {
+  foreach (int32_t sequence, sequences) {
     Promise<bool>* cancelled = new Promise<bool>();
     unowned[sequence] = cancelled;
     current.insert(Group::Membership(sequence, cancelled->future()));

http://git-wip-us.apache.org/repos/asf/mesos/blob/fa14ea42/src/zookeeper/group.hpp
----------------------------------------------------------------------
diff --git a/src/zookeeper/group.hpp b/src/zookeeper/group.hpp
index 27b2ee9..facfb1f 100644
--- a/src/zookeeper/group.hpp
+++ b/src/zookeeper/group.hpp
@@ -66,7 +66,7 @@ public:
       return sequence >= that.sequence;
     }
 
-    uint64_t id() const
+    int32_t id() const
     {
       return sequence;
     }
@@ -85,10 +85,10 @@ public:
   private:
     friend class GroupProcess; // Creates and manages memberships.
 
-    Membership(uint64_t _sequence, const process::Future<bool>& cancelled)
+    Membership(int32_t _sequence, const process::Future<bool>& cancelled)
       : sequence(_sequence), cancelled_(cancelled) {}
 
-    uint64_t sequence;
+    const int32_t sequence;
     process::Future<bool> cancelled_;
   };
 
@@ -268,8 +268,8 @@ private:
   // Expected ZooKeeper sequence numbers (either owned/created by this
   // group instance or not) and the promise we associate with their
   // "cancellation" (i.e., no longer part of the group).
-  std::map<uint64_t, process::Promise<bool>*> owned;
-  std::map<uint64_t, process::Promise<bool>*> unowned;
+  std::map<int32_t, process::Promise<bool>*> owned;
+  std::map<int32_t, process::Promise<bool>*> unowned;
 
   // Cache of owned + unowned, where 'None' represents an invalid
   // cache and 'Some' represents a valid cache.


[2/2] git commit: Fixed an exception raised in the master related to task statuses.

Posted by bm...@apache.org.
Fixed an exception raised in the master related to task statuses.

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


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

Branch: refs/heads/master
Commit: 081a1aba1c330f4a0eb76cdc64d34eccad0c3611
Parents: cac2d39
Author: Benjamin Mahler <bm...@twitter.com>
Authored: Wed Dec 4 23:57:01 2013 -0800
Committer: Benjamin Mahler <bm...@twitter.com>
Committed: Thu Dec 5 15:03:58 2013 -0800

----------------------------------------------------------------------
 src/master/master.cpp | 3 ++-
 src/slave/slave.cpp   | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/081a1aba/src/master/master.cpp
----------------------------------------------------------------------
diff --git a/src/master/master.cpp b/src/master/master.cpp
index b2b8db3..c610e49 100644
--- a/src/master/master.cpp
+++ b/src/master/master.cpp
@@ -1552,7 +1552,8 @@ void Master::statusUpdate(const StatusUpdate& update, const UPID& pid)
   LOG(INFO) << "Status update " << update << " from " << pid;
 
   // TODO(brenden) Consider wiping the `data` and `message` fields?
-  if (task->state() == status.state()) {
+  if (task->statuses_size() > 0 &&
+      task->statuses(task->statuses_size() - 1).state() == task->state()) {
     task->mutable_statuses()->RemoveLast();
   }
   task->add_statuses()->CopyFrom(status);

http://git-wip-us.apache.org/repos/asf/mesos/blob/081a1aba/src/slave/slave.cpp
----------------------------------------------------------------------
diff --git a/src/slave/slave.cpp b/src/slave/slave.cpp
index 75d9e5d..9a8b82f 100644
--- a/src/slave/slave.cpp
+++ b/src/slave/slave.cpp
@@ -3284,7 +3284,8 @@ void Executor::updateTaskState(const TaskStatus& status)
   if (launchedTasks.contains(status.task_id())) {
     Task* task = launchedTasks[status.task_id()];
     // TODO(brenden): Consider wiping the `data` and `message` fields?
-    if (task->state() == status.state()) {
+    if (task->statuses_size() > 0 &&
+        task->statuses(task->statuses_size() - 1).state() == task->state()) {
       task->mutable_statuses()->RemoveLast();
     }
     task->add_statuses()->CopyFrom(status);