Benjamin Bannier created MESOS-8536:
---------------------------------------
Summary: Pending offer operations on resource provider resources
not properly accounted for in allocator
Key: MESOS-8536
URL: https://issues.apache.org/jira/browse/MESOS-8536
Project: Mesos
Issue Type: Bug
Components: master
Affects Versions: 1.5.0
Reporter: Benjamin Bannier
Assignee: Benjamin Bannier
The master currently does not accumulate the resources used by offer operations
on master failover. While we create a datastructure to hold this information,
we missed updating it.
{code}
hashmap<FrameworkID, Resources> usedByOperations;
if (provider.newOperations.isSome()) {
foreachpair (const id::UUID& uuid,
const Operation& operation,
provider.newOperations.get()) {
// Update to bookkeeping of operations.
CHECK(!slave->operations.contains(uuid))
<< "New operation " << uuid.toString() << " is already known";
Framework* framework = nullptr;
if (operation.has_framework_id()) {
framework = getFramework(operation.framework_id());
}
addOperation(framework, slave, new Operation(operation));
}
}
allocator->addResourceProvider(
slaveId,
provider.newTotal.get(),
usedByOperations);
{code}
Here {{usedByOperations}} is not updated.
This leads to problems when the operation becomes terminal and we try to
recover the used resources which might not be known to the framework sorter
inside the hierarchical allocator.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)