MCPcopy Create free account
hub / github.com/apache/mesos / initialize

Method initialize

src/tests/master_benchmarks.cpp:148–199  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

146 tasksPerCompletedFramework(_tasksPerCompletedFramework) {}
147
148 void initialize() override
149 {
150 install<SlaveReregisteredMessage>(&Self::reregistered);
151 install<PingSlaveMessage>(
152 &Self::ping,
153 &PingSlaveMessage::connected);
154
155 // Prepare `ReregisterSlaveMessage` which simulates the real world scenario:
156 // TODO(xujyan): Notable things missing include:
157 // - `ExecutorInfo`s
158 // - Task statuses
159 SlaveInfo slaveInfo = createSlaveInfo(slaveId);
160 message.mutable_slave()->Swap(&slaveInfo);
161 message.set_version(MESOS_VERSION);
162
163 // Used for generating framework IDs.
164 size_t id = 0;
165 for (; id < frameworksPerAgent; id++) {
166 FrameworkID frameworkId;
167 frameworkId.set_value("framework" + stringify(id));
168
169 FrameworkInfo framework = createFrameworkInfo(frameworkId);
170 message.add_frameworks()->Swap(&framework);
171
172 for (size_t j = 0; j < tasksPerFramework; j++) {
173 Task task = protobuf::createTask(
174 createTaskInfo(slaveId),
175 TASK_RUNNING,
176 frameworkId);
177 message.add_tasks()->Swap(&task);
178 }
179 }
180
181 for (; id < frameworksPerAgent + completedFrameworksPerAgent; id++) {
182 Archive::Framework* completedFramework =
183 message.add_completed_frameworks();
184
185 FrameworkID frameworkId;
186 frameworkId.set_value("framework" + stringify(id));
187
188 FrameworkInfo framework = createFrameworkInfo(frameworkId);
189 completedFramework->mutable_framework_info()->Swap(&framework);
190
191 for (size_t j = 0; j < tasksPerCompletedFramework; j++) {
192 Task task = protobuf::createTask(
193 createTaskInfo(slaveId),
194 TASK_FINISHED,
195 frameworkId);
196 completedFramework->add_tasks()->Swap(&task);
197 }
198 }
199 }
200
201 Future<Nothing> reregister()
202 {

Callers

nothing calls this directly

Calls 6

createFrameworkInfoFunction · 0.85
createTaskInfoFunction · 0.85
SwapMethod · 0.80
createSlaveInfoFunction · 0.70
createTaskFunction · 0.70
stringifyFunction · 0.50

Tested by

no test coverage detected