GLIDEIN_Glexec_Use in group scope does not correctly override GLIDEIN_Glexec_Use in global scope
I just confirmed on our test instance this appears to be a glideinWMS bug.
With require_glidein_glexec_use="True" the frontend requests glideins fine if GLIDEIN_Glexec_Use is set to REQUIRED and defined in the global attribute section.
However I moved the REQUIRED attribute to the frontend group and set GLIDEIN_Glexec_Use to "NEVER" in the global section, to mirror the glow frontend's setup.
When this happens, the frontend no longer considers it a match:
[2013-06-10T14:31:45-04:00 15952] Jobs in schedd queues | Glideins | Request
[2013-06-10T14:31:45-04:00 15952] 1( 1 1 1 1) 0( 0 0) | 0 0 0 | 0 0 Down Unmatched
Next, I set require_glidein_glexec_use="False" in the factory and reconfigured. Interestingly again the frontend was ok:
[2013-06-10T14:34:53-04:00 15952] Jobs in schedd queues | Glideins | Request
[2013-06-10T14:34:53-04:00 15952] 1( 1 1 1 1) 0( 0 10000) | 0 0 0 | 1 2 Up CMS_T2_US_UCSD_gw6@v2_0@ITBGOC@glidein-itb.grid.iu.edu
Also, the glideins themselves seem to get the correct setting in the configuration:
in the job .err log:
So in summary to reproduce this error:
1. set GLIDEIN_Glexec_Use to NEVER in the global section of frontend config
2. set GLIDEIN_Glexec_Use to REQUIRED in the frontend group section
3. in the factory config, set require_glidein_glexec_use="True" in the entry
And the frontend stops sending requests.
#1 Updated by Parag Mhashilkar over 6 years ago
- Occurs In v2_5_3 added
Workaround for now is to remove the global GLIDEIN_Glexec_Use attribute and explicitly setting the attribute in each group.
Details: GLIDEIN_Glexec_Use is converted to be Factory query expression and global and the local section get internally ANDed by design. This creates a conflict. My proposal is to change the behavior internally and not make GLIDEIN_Glexec_Use part of FactoryQuery expressions in the beginning but considered explicitly at the group level. Unless anyone objects I will go ahead with this in implementation when I get to fixing it.