Currently the namespace annotation for quotas is passed to the core when a new application is submitted. The result is that the quota is set on the leaf queue that the application runs in.
This causes a number of issues:
- no new application means no quota change
- the queue the quota is set on is non deterministic
- quota could be used more than once
Behaviour should be deterministic and timely. This would require a change in the way we pick up the quota and how it is communicated between k8shim and core.
Example showing the issue using the following placement rule:
The quota is set on the user queue. This means that the overall usage could be the same as the namespace quota * #users which really defeats the purpose. It could even lead to a change to never be picked up as the user only submits one long running application