Cleaned up Master::addFramework. Review: https://reviews.apache.org/r/26205
Project: http://git-wip-us.apache.org/repos/asf/mesos/repo Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/e4bd7948 Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/e4bd7948 Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/e4bd7948 Branch: refs/heads/master Commit: e4bd7948976499d9eb30ff0d6741c5df64faf349 Parents: a4a0d15 Author: Benjamin Mahler <[email protected]> Authored: Mon Sep 29 14:15:21 2014 -0700 Committer: Benjamin Mahler <[email protected]> Committed: Wed Oct 8 11:45:12 2014 -0700 ---------------------------------------------------------------------- src/master/master.cpp | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/mesos/blob/e4bd7948/src/master/master.cpp ---------------------------------------------------------------------- diff --git a/src/master/master.cpp b/src/master/master.cpp index 26cd29a..0286353 100644 --- a/src/master/master.cpp +++ b/src/master/master.cpp @@ -1433,6 +1433,11 @@ void Master::_registerFramework( } addFramework(framework); + + FrameworkRegisteredMessage message; + message.mutable_framework_id()->MergeFrom(framework->id); + message.mutable_master_info()->MergeFrom(info_); + send(framework->pid, message); } @@ -1630,6 +1635,15 @@ void Master::_reregisterFramework( // (above) so that we can properly determine the resources it's // currently using! addFramework(framework); + + // TODO(bmahler): We have to send a registered message here for + // the re-registering framework, per the API contract. Send + // re-register here per MESOS-786; requires deprecation or it + // will break frameworks. + FrameworkRegisteredMessage message; + message.mutable_framework_id()->MergeFrom(framework->id); + message.mutable_master_info()->MergeFrom(info_); + send(framework->pid, message); } CHECK(frameworks.registered.contains(frameworkInfo.id())) @@ -3985,11 +3999,6 @@ void Master::addFramework(Framework* framework) roles[framework->info.role()]->addFramework(framework); - FrameworkRegisteredMessage message; - message.mutable_framework_id()->MergeFrom(framework->id); - message.mutable_master_info()->MergeFrom(info_); - send(framework->pid, message); - // There should be no offered resources yet! CHECK_EQ(Resources(), framework->offeredResources);
