Anindya Sinha created MESOS-7308:
------------------------------------

             Summary: Race condition in `updateAllocation()` on DESTORY of a 
shared volume.
                 Key: MESOS-7308
                 URL: https://issues.apache.org/jira/browse/MESOS-7308
             Project: Mesos
          Issue Type: Bug
          Components: general
            Reporter: Anindya Sinha
            Assignee: Anindya Sinha


When a {{DESTROY}} (for shared volume) is processed in the master actor, we 
rescind pending offers to which the volume to be destroyed is already offered 
to. Before allocator executes the {{updateAllocation()}} API, offers with the 
same shared volume can be sent to frameworks since the destroyed shared volume 
is not removed from {{slaves.total}} till {{updateAllocation()}} completes. As 
a result, the following check can fail:
{code}
  CHECK_EQ(
      frameworkAllocation.flatten().createStrippedScalarQuantity(),
      updatedFrameworkAllocation.flatten().createStrippedScalarQuantity());
{code}

We need to address this condition by not failing the {{CHECK_EQ}}, and also 
ensuring that the master's state is restored to honor the {{DESTROY}} of the 
shared volume.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to