Benjamin Bannier created MESOS-9612:
---------------------------------------

             Summary: Resource provider manager assumes all operations are 
triggered by frameworks
                 Key: MESOS-9612
                 URL: https://issues.apache.org/jira/browse/MESOS-9612
             Project: Mesos
          Issue Type: Bug
          Components: agent
            Reporter: Benjamin Bannier


When the agent tries to apply an operation to resource provider resources, it 
invokes {{ResourceProviderManager::applyOperation}} which in turn invokes 
{{ResourceProviderManagerProcess::applyOperation}}. That function currently 
assumes that the received message contains a valid {{FrameworkID}},
{noformat}
 void ResourceProviderManagerProcess::applyOperation(
      const ApplyOperationMessage& message)                                     
                                                                                
                                                                                
{
    const Offer::Operation& operation = message.operation_info();               
                                                                                
                                                                                
  
    const FrameworkID& frameworkId = message.framework_id(); // `framework_id` 
is `optional`.
{noformat}

Since {{FrameworkID}} is not a trivial proto types, but instead one with a 
{{required}} field {{value}}, the message composed with the {{frameworkId}} 
below cannot be serialized which leads to a failure below which in turn 
triggers a {{CHECK}} failure in the agent's function interfacing with the 
manager.

A typical scenario where we would want to support operator API calls here is to 
destroy leftover persistent volumes or reservations.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to