Bug 785297

Summary: Document the GROUP_SORT_EXPR negotiator config macro
Product: Red Hat Enterprise MRG Reporter: Erik Erlandson <eerlands>
Component: Grid_User_GuideAssignee: David Ryan <dryan>
Status: CLOSED CURRENTRELEASE QA Contact: Lubos Trilety <ltrilety>
Severity: low Docs Contact:
Priority: low    
Version: 2.2CC: chetan, eerlands, ltrilety, matt, mkudlej, rlandman, tstclair
Target Milestone: 2.3Keywords: Documentation
Target Release: 2.3   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 785283    
Bug Blocks: 794514    

Description Erik Erlandson 2012-01-27 21:45:47 UTC
Description of problem:
The GROUP_SORT_EXPR macro is new and needs doc.  I think they left this undocumented upstream on 7.6

Comment 1 Erik Erlandson 2012-01-27 21:46:57 UTC
LaTex doc I wrote for upstream:

%\label{param:GroupSortExpr}
%\item[\Macro{GROUP\_SORT\_EXPR}]
%  A classad expression which evaluates to a numeric value that is used
%  to sort accounting groups to determine which order they negotiate in.
%  The classad expression for \Macro{GROUP\_SORT\_EXPR} may involve any of
%  the following:
%  \begin{itemize}
%      \item AccountingGroup -- the name of the accounting group
%      \item GroupQuota -- the resource quota assigned to the group for the current negotiation cycle
%      \item GroupResourcesAllocated -- the resources allocated to this group by the HGQ algorithm
%      \item GroupResourcesInUse -- the resources currently in use by jobs associated with this group
%  \end{itemize}
%  An example group sorting expression that causes the root group (``<none>'') to always negotiate 
%  last, and other groups to negotiate in order of quota-based starvation:
%\begin{verbatim}
%GROUP_SORT_EXPR = ifThenElse(AccountingGroup=?="<none>", 3.4e+38,
%  ifThenElse(GroupQuota > 0, GroupResourcesInUse/GroupQuota, 3.3e+38))
%\end{verbatim}
%  If an expression fails to evaluate to a numeric value for a group, then
%  that group's sorting value will default to FLT\_MAX (3.40282e+38).
%  GROUP\_SORT\_EXPR defaults to the backward compatible starvation ratio:
%\begin{verbatim}
%GROUP_SORT_EXPR = ifThenElse(GroupResourcesAllocated>0.0,
%  GroupResourcesInUse/GroupResourcesAllocated, 3.40282e+38)
%\end{verbatim}

Comment 5 Lubos Trilety 2013-02-21 11:37:02 UTC
Plain text:

GROUP SORT EXPR A classad expression which evaluates to a numeric
value that is used to sort accounting groups to determine which order they
negotiate in. The classad expression for GROUP SORT EXPR may involve
any of the following:
• AccountingGroup – the name of the accounting group
• GroupQuota – the resource quota assigned to the group for the current
negotiation cycle
• GroupResourcesAllocated – the resources allocated to this group by the
HGQ algorithm
• GroupResourcesInUse – the resources currently in use by jobs associated
with this group
An example group sorting expression that causes the root group (“¡none¿”) to
always negotiate last, and other groups to negotiate in order of quota-based
starvation:
GROUP_SORT_EXPR = ifThenElse(AccountingGroup=?="<none>", 3.4e+38,
ifThenElse(GroupQuota > 0, GroupResourcesInUse/GroupQuota, 3.3e+38))
If an expression fails to evaluate to a numeric value for a group, then that group’s
sorting value will default to FLT MAX (3.40282e+38). GROUP SORT EXPR
defaults to the backward compatible starvation ratio:
GROUP_SORT_EXPR = ifThenElse(GroupResourcesAllocated>0.0,
GroupResourcesInUse/GroupResourcesAllocated, 3.40282e+38)

Comment 6 Lubos Trilety 2013-02-21 12:59:27 UTC
Some off the text is missing, not sure if it is a problem though. But certainly there should not be \Macro{GROUP\_SORT\_EXPR} but just GROUP_SORT_EXPR.

>>> assigned

Comment 7 Lubos Trilety 2013-02-21 13:03:05 UTC
For some reason underscores are not copied correctly in Comment 5, so here it is again:

GROUP_SORT_EXPR
A classad expression which evaluates to a numeric value that is used to sort
accounting groups to determine which order they negotiate in. The classad
expression for GROUP_SORT_EXPR may involve any of the following:
– AccountingGroup – the name of the accounting group
– GroupQuota – the resource quota assigned to the group for the cur-
rent negotiation cycle
– GroupResourcesAllocated – the resources allocated to this group by
the HGQ algorithm
– GroupResourcesInUse – the resources currently in use by jobs asso-
ciated with this group
An example group sorting expression that causes the root group (“¡none¿”)
to always negotiate last, and other groups to negotiate in order of quota-
based starvation:
GROUP_SORT_EXPR = ifThenElse(AccountingGroup=?="<none>", 3.4e+38,
ifThenElse(GroupQuota > 0, GroupResourcesInUse/GroupQuota, 3.3e+38))
If an expression fails to evaluate to a numeric value for a group, then that
group’s sorting value will default to FLT_MAX (3.40282e+38). GROUP_SORT_EXPR
defaults to the backward compatible starvation ratio:
GROUP_SORT_EXPR = ifThenElse(GroupResourcesAllocated>0.0,
GroupResourcesInUse/GroupResourcesAllocated, 3.40282e+38)

Comment 14 Lubos Trilety 2013-02-28 17:51:57 UTC
Chapter checked.

>>> verified