[ https://issues.apache.org/jira/browse/MESOS-8968?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16882508#comment-16882508 ]
Meng Zhu edited comment on MESOS-8968 at 7/10/19 11:54 PM: ----------------------------------------------------------- {noformat} commit 0026ea46dc35cbba1f442b8e425c6cbaf81ee8f8 (apache/master) Author: Meng Zhu <m...@mesosphere.io> Date: Fri Jul 5 18:05:59 2019 -0700 Implemented `UPDATE_QUOTA` operator call. This patch wires up the master, auth, registar and allocator pieces for `UPDATE_QUOTA` call. This enables the master capability `QUOTA_V2`. The capability implies the quota v2 API is capable of writes (`UPDATE_QUOTA`) and the master is capable of recovering from V2 quota (`QuotaConfig`) in registry. This patch lacks the rescind offer logic. When quota limits and guarantees are configured, it might be necessary to rescind offers on the fly to satisfy new guarantees or be constrained by the new limits. A todo is left and will be tackled in subsequent patches. Also enabled test `MasterQuotaTest.RecoverQuotaEmptyCluster`. Review: https://reviews.apache.org/r/71021 {noformat} {noformat} commit dcd73437549413790751d1ff127989dbb29bd753 (HEAD -> update_quota, apache/master) Author: Meng Zhu <m...@mesosphere.io> Date: Sun Jul 7 14:27:14 2019 -0700 Added tests for `UPDATE_QUOTA`. These tests reuse the existing tests for `SET_QUOTA` and `REMOVE_QUOTA` calls. In general, `UPDATE_QUOTA` request should fail where `SET_QUOTA` fails. When the existing test expects `SET_QUOTA` call succeeds, we test the `UPDATE_QUOTA` call by first remove the set quota and then send the `UPDATE_QUOTA` request. Review: https://reviews.apache.org/r/71022 {noformat} was (Author: mzhu): {noformat} commit 0026ea46dc35cbba1f442b8e425c6cbaf81ee8f8 (apache/master) Author: Meng Zhu <m...@mesosphere.io> Date: Fri Jul 5 18:05:59 2019 -0700 Implemented `UPDATE_QUOTA` operator call. This patch wires up the master, auth, registar and allocator pieces for `UPDATE_QUOTA` call. This enables the master capability `QUOTA_V2`. The capability implies the quota v2 API is capable of writes (`UPDATE_QUOTA`) and the master is capable of recovering from V2 quota (`QuotaConfig`) in registry. This patch lacks the rescind offer logic. When quota limits and guarantees are configured, it might be necessary to rescind offers on the fly to satisfy new guarantees or be constrained by the new limits. A todo is left and will be tackled in subsequent patches. Also enabled test `MasterQuotaTest.RecoverQuotaEmptyCluster`. Review: https://reviews.apache.org/r/71021 {noformat} > Wire `UPDATE_QUOTA` call. > ------------------------- > > Key: MESOS-8968 > URL: https://issues.apache.org/jira/browse/MESOS-8968 > Project: Mesos > Issue Type: Bug > Reporter: Meng Zhu > Priority: Major > Labels: Quota, allocator, multitenancy > > Wire the existing master, auth, registar, and allocator pieces together to > complete the `UPDATE_QUOTA` call. > This would enable the master capability `QUOTA_V2`. > This also fixes the "ignoring zero resource quota" bug in the old quota > implementation, namely: > Currently, Mesos discards resource object with zero scalar value when parsing > resources. This means quota set to zero would be ignored and not enforced. > For example, role with quota set to "cpu:10;mem:10;gpu:0" intends to get no > GPU. Due to the above issue, the allocator can only see the quota as > "cpu:10;mem:10", and no quota GPU means no guarantee and NO limit. Thus GPUs > may still be allocated to this role. > With the completion of `UPDATE_QUOTA` which takes a map of name, scalar > values, zero value will no longer be dropped. -- This message was sent by Atlassian JIRA (v7.6.3#76005)