You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Anindya Sinha (JIRA)" <ji...@apache.org> on 2017/04/17 23:18:41 UTC
[jira] [Updated] (MESOS-7308) Race condition in
`updateAllocation()` on DESTORY of a shared volume.
[ https://issues.apache.org/jira/browse/MESOS-7308?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Anindya Sinha updated MESOS-7308:
---------------------------------
Shepherd: Yan Xu
> 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
> Labels: persistent-volumes
>
> 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)