-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
rfc43: support hostlist constraint #410
Conversation
563f9aa
to
1d02aa3
Compare
closing, i believe a "comparison limit" in constraints overall is a better solution |
oops, i got RFCs / PRs mixed up in my head ... i still need to add the hostlist stuff, re-opening |
spec_43.rst
Outdated
@@ -209,6 +209,9 @@ based on the following constraint operators. | |||
``results`` | |||
Designate one or more job results (*string* or *integer*) and match jobs with those results. Both bitmasks (including multiple results) and string names of the results SHALL be accepted. | |||
|
|||
``hostlist`` | |||
Designate one or more nodes in RFC 29 Hostlist format (*string*) and match jobs assigned to those nodes. The number of nodes specified in the ``hostlist`` constraint SHALL NOT exceed the size of the instance or 1024, whichever is larger. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Instead of specifying a precise limit here, maybe couch this by saying the "job list module MAY limit the number of entries in a hostlist constraint to prevent long constraint match times" or similar.
The 1024 "minimum maximum" makes some sense, but since it doesn't handle instances larger than 1024 that shrink, I'm not sure that specific number should be encoded in RFC. Also, maybe when there's a backend DB there will be more efficient hostlist matching and a limit won't be necessary.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The 1024 "minimum maximum" makes some sense, but since it doesn't handle instances larger than 1024 that shrink, I'm not sure that specific number should be encoded in RFC.
Understood. I picked 1024 somewhat randomly as a "reasonable minimum maximum". But agree, we could leave the number out.
1d02aa3
to
454c139
Compare
re-pushed, tweaking per comment above |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
spec_43.rst
Outdated
@@ -209,6 +209,9 @@ based on the following constraint operators. | |||
``results`` | |||
Designate one or more job results (*string* or *integer*) and match jobs with those results. Both bitmasks (including multiple results) and string names of the results SHALL be accepted. | |||
|
|||
``hostlist`` | |||
Designate one or more nodes in RFC 29 Hostlist format (*string*) and match jobs assigned to those nodes. The job list module MAY limit the number of entries in a hostlist constraint to prevent long constraint match times |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: missing period.
454c139
to
eb1713f
Compare
Problem: It would be useful to filter jobs based on the nodes assigned to the job. Support a "hostlist" constraint to filter jobs by specific hosts.
eb1713f
to
f8c8609
Compare
Problem: It would be useful to fitler jobs based on the nodes assigned to the job.
Support a "hostlist" constraint to filter jobs by specific hosts.
per flux-framework/flux-core#5656
The idea to make max hostlist input size of instance OR 1024 is there is potential for the size of the cluster to change over time (like EOL and cluster size shrinking). So giving it a minimum of 1024 is to give it atleast an ok minimum no matter what.