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

Alexander Rukletsov updated MESOS-3338:
---------------------------------------
    Description: 
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}

Idea for new resources states: 
https://docs.google.com/drawings/d/1aquVIqPY8D_MR-cQjZu-wz5nNn3cYP3jXqegUHl-Kzc/edit

  was:
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}


> 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}
> Idea for new resources states: 
> https://docs.google.com/drawings/d/1aquVIqPY8D_MR-cQjZu-wz5nNn3cYP3jXqegUHl-Kzc/edit



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

Reply via email to