-
Notifications
You must be signed in to change notification settings - Fork 3
Add --blacklist/--whitelist to mxqsub, add mxset #82
Closed
Commits on Apr 15, 2020
-
Configuration menu - View commit details
-
Copy full SHA for b84d9b6 - Browse repository at this point
Copy the full SHA b84d9b6View commit details -
mxqd: Ignore failure to scan JOB_TMPDIR_MNTDIR
Avoid unneeded warning when scanning JOB_TMPDIR_MNTDIR for possible leftover job mounts. The parent directory of JOB_TMPDIR_MNTDIR is created when the first job with the --tmpdir feature is started. So it won't exist in a new server. This cleanup path is only used in the exceptional case that the usual cleanup path (via job_has_finished) didn't succeed, e.g. when mxqd was killed. The cleanup is not essential for the currently running server.
Configuration menu - View commit details
-
Copy full SHA for 173dbc0 - Browse repository at this point
Copy the full SHA 173dbc0View commit details -
Add function attribute ((unusged)) to avoid a compiler warning when the static inline function defined in the header file is not used by the compilation unit.
Configuration menu - View commit details
-
Copy full SHA for 526b09e - Browse repository at this point
Copy the full SHA 526b09eView commit details -
Add header file for the quasi-standard [1] xmalloc call. The current approach implemented in mx_util is to wait and retry on ENOMEM malloc failure. However, this overhead doesn't seem to be justified, because it is difficult to imagine a case, where a malloc would fail with ENOMEM at one time and a retry would succeed. [1] https://www.gnu.org/software/libc/manual/html_node/Malloc-Examples.html
Configuration menu - View commit details
-
Copy full SHA for e629d62 - Browse repository at this point
Copy the full SHA e629d62View commit details -
Add a utility module which can store a set of keywords. The set can be created and updated from a string and can be serialized into a string. The canonical string representation produced by this utilits is the space separated list of the sorted keywords in lexical order. Input strings used to create or update a keyword set contain keywords separated by whitespace. The keywords may be prefxied with "+" and "-". For updates, first all unprefixed keywords are processes to create the initial set, than updates are applied from the prefixed keywords. An empty string used for updates is considered "no change", not "set to empty set". Usage example: struct keywordset *kws = keywordset_new("xx yy") keywordset_update(kws, "-yy +zz") // remove yy, add zz keywordset_update(kws, "aa bb") // set to aa, bb if (keywordset_ismember(kws,"bb")) ... // true char *s = keywordset_get(kws): // s now "aa bb" free(s); // caller must free() keywordset_purge(kws) // set nowto empty. keywordset_free(kws);
Configuration menu - View commit details
-
Copy full SHA for 809a3c6 - Browse repository at this point
Copy the full SHA 809a3c6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7ee6839 - Browse repository at this point
Copy the full SHA 7ee6839View commit details -
sql: Add blacklist, whitelist for group
Add list of blacklisted and whitelisted servers to group. The string is supposed to be canonical (lexical sorted, space separated) as produced by keywordset_get(), so that groups with equal sets can be found by sql string compare.
Configuration menu - View commit details
-
Copy full SHA for ea7872a - Browse repository at this point
Copy the full SHA ea7872aView commit details -
mxq_group.h: Add blacklist and whitelist
Add list of blacklisted and whitelisted servers to group. The string is supposed to be canonical (lexical sorted, space separated) as produced by keywordset_get(), so that groups with equal sets can be found by sql string compare.
Configuration menu - View commit details
-
Copy full SHA for cbcdc4b - Browse repository at this point
Copy the full SHA cbcdc4bView commit details -
Configuration menu - View commit details
-
Copy full SHA for d394af0 - Browse repository at this point
Copy the full SHA d394af0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 87f136e - Browse repository at this point
Copy the full SHA 87f136eView commit details -
mxqsub: Add options --blacklist and --whitelist
Add a new options so that specific mxqd servers can be excluded from starting jobs for this group. mxqsub --whitelist "acedia avaritia" sleep 10 // start only on these mxqsub --blacklist dontpanic sleep 10 // start on any node but this one Blacklist has priority, so mxqsub --white "kronos, uselessbox" --black kronos would not start on kronos. The lists of blacklisted and whitelisted servers can be modified with mxqset.
Configuration menu - View commit details
-
Copy full SHA for 2533ab5 - Browse repository at this point
Copy the full SHA 2533ab5View commit details -
Configuration menu - View commit details
-
Copy full SHA for b02acb4 - Browse repository at this point
Copy the full SHA b02acb4View commit details -
Add a new command which can be used to modify an existing group. Examples: mxqset group 123 --closed mxqset group 123 --open mxqset group 123 --blacklist "dontpanic" # replace mxqset group 123 --whitelist "+uselessbox +gula" # add mxqset group 123 --blacklist -dontpanic # remove mxqset group 123 --whitelist "" # clear The flags open and closed can be set from mxqadmin as well (`mxqadmin --close=123`) , but the synopsis, in which the options take the groupid as a value is difficult to expand to new options, which take a value.
Configuration menu - View commit details
-
Copy full SHA for f03f238 - Browse repository at this point
Copy the full SHA f03f238View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6191b9e - Browse repository at this point
Copy the full SHA 6191b9eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7f3d8c0 - Browse repository at this point
Copy the full SHA 7f3d8c0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6873cf3 - Browse repository at this point
Copy the full SHA 6873cf3View commit details -
mxqd: Only start jobs we are qualified for
Check, whether this server is qualified to start jobs from a group. Lazy-evaluate qualification criteria defined in the group and cache the result. The qualification criteria need to be reevaluated when the active groups were reloaded, because they may be changed by the user in existing groups. For now, the only qualification criteria are the groups blacklist and whitelist. If a group has a whitelist, the short or long hostname of the mxqd server needs to be on that list, otherwise the server is not qualified for the group. If the servers name is on the blacklist of the group, the server is not qualified for the group. Don't start jobs we are not qualified for. This can later be expanded to additional criteria (e.g. hostconfig or processor flags).
Configuration menu - View commit details
-
Copy full SHA for e9c0de8 - Browse repository at this point
Copy the full SHA e9c0de8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 933bd39 - Browse repository at this point
Copy the full SHA 933bd39View commit details
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.