You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Guangya Liu (JIRA)" <ji...@apache.org> on 2016/03/13 03:16:33 UTC

[jira] [Updated] (MESOS-4447) Renamed reserved() API to reservations()

     [ https://issues.apache.org/jira/browse/MESOS-4447?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Guangya Liu updated MESOS-4447:
-------------------------------
    Summary: Renamed reserved() API to reservations()  (was: Updated reserved() API)

> Renamed reserved() API to reservations()
> ----------------------------------------
>
>                 Key: MESOS-4447
>                 URL: https://issues.apache.org/jira/browse/MESOS-4447
>             Project: Mesos
>          Issue Type: Bug
>            Reporter: Guangya Liu
>            Assignee: Guangya Liu
>
> There are some problems for current {{reserve}} API. The problem is as following:
> {code}
> hashmap<string, Resources> Resources::reserved() const
> {
>   hashmap<string, Resources> result;
>   foreach (const Resource& resource, resources) {
>     if (isReserved(resource)) {
>       result[resource.role()] += resource;
>     }
>   }
>   return result;
> }
> Resources Resources::reserved(const string& role) const
> {
>   return filter(lambda::bind(isReserved, lambda::_1, role));
> }
> bool Resources::isReserved(
>     const Resource& resource,
>     const Option<string>& role)
> {
>   if (role.isSome()) {
>     return !isUnreserved(resource) && role.get() == resource.role();
>   } else {
>     return !isUnreserved(resource);
>   }
> }
> {code}
> This caused the {{reserved(const string& role) }} has no chance to transfer a   None() parameter to get all reserved resources in flatten mode.
> The solution is remove {{reserved()}} and update {{reserved(const string& role) }} to {{reserved(const Option<string>& role = None()) }}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)