[ 
https://issues.apache.org/jira/browse/MESOS-3338?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14956878#comment-14956878
 ] 

Qian Zhang commented on MESOS-3338:
-----------------------------------

The reserved resources should not be simply counted as used resource, see the 
comments of Slave::usedResources:
{code}
hashmap<FrameworkID, Resources> usedResources;  // Active task / executors.
{code}
As the comments show, only the resources used by active tasks / executors are 
counted as used resources. But for reserved resources, they can still be 
available resources (not used by any tasks / executors) to the framework who 
reserves them.

So I agree we may need a new state for the reserved resources.

> Dynamic reservations are not counted as used resources in the master
> --------------------------------------------------------------------
>
>                 Key: MESOS-3338
>                 URL: https://issues.apache.org/jira/browse/MESOS-3338
>             Project: Mesos
>          Issue Type: Bug
>          Components: allocation, master
>            Reporter: Alexander Rukletsov
>            Assignee: Guangya Liu
>            Priority: Minor
>              Labels: mesosphere, persistent-volumes
>
> Dynamically reserved resources should be considered used or allocated and 
> hence reflected in Mesos bookkeeping structures and {{state.json}}.
> I expanded the {{ReservationTest.ReserveThenUnreserve}} test with the 
> following section:
> {code}
>   // Check that the Master counts the reservation as a used resource.
>   {
>     Future<process::http::Response> response =
>       process::http::get(master.get(), "state.json");
>     AWAIT_READY(response);
>     Try<JSON::Object> parse = JSON::parse<JSON::Object>(response.get().body);
>     ASSERT_SOME(parse);
>     Result<JSON::Number> cpus =
>       parse.get().find<JSON::Number>("slaves[0].used_resources.cpus");
>     ASSERT_SOME_EQ(JSON::Number(1), cpus);
>   }
> {code}
> and got
> {noformat}
> ../../../src/tests/reservation_tests.cpp:168: Failure
> Value of: (cpus).get()
>   Actual: 0
> Expected: JSON::Number(1)
> Which is: 1
> {noformat}



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

Reply via email to