-
Notifications
You must be signed in to change notification settings - Fork 107
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
Support change to SiteWhitelist/SiteBlacklist in ReqMgr2 for active workflows #12037
Comments
@todor-ivanov it looks like a bug sneaked in with this development. Can you please look ASAP into: I don't think we need to reopen this ticket, but please make the relevant reference in the upcoming PR. |
And here we go with a new issue for ACDC workflows being assigned through the WEB UI:
From what I can tell, the problem is with the function which is comparing values provided by the user vs values already in the workload. Given that this is an ACDC workflow, it comes with a bunch of those attributes inherited from the parent workflow. In other words, while this logic of checking what the user provided against the actual values work for standard workflows, it won't work for Resubmission ones. I am actually suspicious that workflow assignment might even be missing the call to some setters, given that it gets assigned with information already in the workload (e.g. ProcessingString, AcquisitionEra, etc). I am reopening this ticket. |
hi @amaltaro , well the origin of the problem is that with ACDCs we call the validation method for a workflow in status WMCore/src/python/WMCore/ReqMgr/Utils/Validation.py Lines 103 to 104 in 4e0759d
I am currently debugging this exact workflow from testbed, trying to fully simulate the conditions. I'll post my findings here |
and here is the diff between the dictionaries upon applying
Everything with
And the reason those being cut off during this action is because none of the request arguments passed here exist in the map of allowed actions per status WMCore/src/python/WMCore/ReqMgr/DataStructs/RequestStatus.py Lines 118 to 147 in 4e0759d
The way I can see out of this is - when it comes to @amaltaro, |
let me stand myself corrected.....
Is actually not the true reason for cutting off these parameters, because we check the
and as one can see all of those are allowed for This whole thing goes in support to the solution I suggested in my previous comment. |
and to be even more strict in the investigation, some of those request parameters differ between the current request and the new set of arguments sent through the REST interface not
|
Impact of the new feature
ReqMgr2
Is your feature request related to a problem? Please describe.
This is a sub-task of this meta-issue: #8323
Towards providing a feature that allows workflow site lists to be changed while workflows are active in the system.
Describe the solution you'd like
With this ticket, we are supposed to implement changes to ReqMgr2 such that
SiteWhitelist
andSiteBlacklist
are allowed to be updated in workflows that are in one of the given statuses:Note that this change needs to be persisted in two places:
If possible, we should also validate whether the sitelists is actually changing or not. If none of them change, then nothing should be persisted in the database and no extra actions need to be triggered.
The reason we are not going to accept these changes for workflows in
assigned
andstaged
is such that we can guarantee no data race between services dealing with the same workflow.An initial point for this development will have to be made here:
https://github.com/dmwm/WMCore/blob/master/src/python/WMCore/ReqMgr/DataStructs/RequestStatus.py#L118
Describe alternatives you've considered
Unless explicitly requested, I don't think we need to add these capabilities to the ReqMgr2 UI.
Additional context
None
The text was updated successfully, but these errors were encountered: