[
https://issues.apache.org/jira/browse/AURORA-802?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14162081#comment-14162081
]
Maxim Khutornenko commented on AURORA-802:
------------------------------------------
Let's say there is a quota of 60CPU and a job update touching 10 existing
instances of 5 CPU each. That would account for a total of 50CPU. Once it's
rolled into a IResourceAggregate it would represent an anonymized resource
consumption of 50CPU without any reference to the existing instances being
touched. Next, the IResouceAggregate(50, _, _) is passed into the
QuotaManager.checkQuota() where there is no way to match the updated instances
against the existing ones. The update is not yet in the store, hence it's not
pulled by the existing update filter. End result: 50(existing) + 50(updated) >
60 allocated.
> Quota is not checked correctly in startJobUpdate
> ------------------------------------------------
>
> Key: AURORA-802
> URL: https://issues.apache.org/jira/browse/AURORA-802
> Project: Aurora
> Issue Type: Bug
> Components: Scheduler
> Reporter: Maxim Khutornenko
> Assignee: Maxim Khutornenko
> Priority: Blocker
>
> The prod resources represented by the IJobUpdate are rolled up into
> IResourceAggregate and thus anonymized before being passed into the
> QuotaManager. This makes QuotaManager treat update resources as purely
> additive leading to double counting.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)