It is possible to configure a mixed hierarchy of quota groups in condor. For example, dynamic->static->dynamic Cumin should model this in its quota tree & edit controls so that users can't set immutable quotas from the UI.
Here is an example of an accounting group config with mixed static and dynamic quotas: # start with a hundred slots NUM_CPUS = 100 GROUP_NAMES = a, b, c, d, c.x, c.y, c.z # These are static quotas GROUP_QUOTA_a = 10 GROUP_QUOTA_b = 10 # The dynamic quotas share remainder (80) # group "c" get 40 GROUP_QUOTA_DYNAMIC_c = 0.5 # group "d" gets 20 GROUP_QUOTA_DYNAMIC_d = 0.25 # remainder (20) goes to "root group" # some sub-groups of group c: GROUP_QUOTA_c.x = 20 # dynamic quotas share remainder (20) # group "c.y" gets 10 GROUP_QUOTA_DYNAMIC_c.y = 0.5 # group "c.z" gets 5 GROUP_QUOTA_DYNAMIC_c.z = 0.25 # remainder (5) goes to group "c"
Here's a configuration file I used for functional testing of the group quota algorithms -- it tests various corner cases for rescaling static and dynamic quotas when they exceed proper totals: NEGOTIATOR_DEBUG = D_FULLDEBUG SCHEDD_INTERVAL = 15 NEGOTIATOR_USE_SLOT_WEIGHTS = FALSE NUM_CPUS = 100 GROUP_NAMES = a, b, c, a.a, a.b, b.a, b.b, b.c, c.a, c.b GROUP_QUOTA_a = 20 # should get 25% of 80 => 20 GROUP_QUOTA_DYNAMIC_b = 0.25 # should get 75% of 80 => 60 GROUP_QUOTA_DYNAMIC_c = 0.75 # should rescale to 5 GROUP_QUOTA_a.a = 10 # should rescale to 15 GROUP_QUOTA_a.b = 30 # should scale to 0.25 => 5 GROUP_QUOTA_DYNAMIC_b.a = 0.4 # should scale to 0.50 => 10 GROUP_QUOTA_DYNAMIC_b.b = 0.8 # should scale to 0.25 => 5 GROUP_QUOTA_DYNAMIC_b.c = 0.4 GROUP_QUOTA_c.a = 20 # should get 50% of 40 => 20, remainder 20 goes to "c" GROUP_QUOTA_DYNAMIC_c.b = 0.5 GROUP_AUTOREGROUP = FALSE
Changes available in revision 4803. 1. There is a new column on the quota selector table for Static Quotas. A value listed in this column indicates that the given quota is a static quota. These values are not editable and are not hyper-linked. 2. When editing a dynamic quota, only dynamic quotas that are on the same level of the tree will be displayed and therefore be editable.
Verified with cumin-0.1.4878-1.el5
Technical note added. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: C: The edit quotas form would display "error" for cases where mixed static and dynamic quotas were configured. C: The UI was never built with static quotas in mind. F: We have added a new column on the page that will show static limits, as appropriate. Values in that column are NOT editable and are not hyperlinked. R: The quotas table no longer displays error and correctly displays the static quotas.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2011-1249.html