De : HTCondor-users <htcondor-users-bounces@xxxxxxxxxxx>
De la part de John M Knoeller
Envoyé : mercredi 24 juin 2020 16:50
À : HTCondor-Users Mail List <htcondor-users@xxxxxxxxxxx>
Objet : Re: [HTCondor-users] Machine classadd inside SYSTEM_PERIODIC_HOLD ?
There is no easy way to add a TARGET ad to the evaluation of SYSTEM_PERIODIC_HOLD, doing that would require us to change the code in the Schedd, and even then the TARGET would not always be available when SYSTEM_PERIODIC_HOLD
was evaluated and would not be updated during the course of the job. The Schedd only sees the Machine ad once, when it gets a match from the Negotiator.
That does not mean that you can’t do something like this, you will just have to go about it a different way. if you control the job,
you can use $$() expansion or job_machine_attrs to inject an attribute into the job whose value comes from the machine,
then look at that attribute from the SYSTEM_PERIODIC_HOLD _expression_.
Unfortunately, the Disk attribute of a Machine ClassAd is dynamic, and not necessarily updated as frequently as you would need,
so you are better off just tagging the machines that have small disks with a special attribute at config time, something like
this will be more reliably available for $$() expansion.
# add to the config of machines that have small disks
STARTD_ATTRS = $(STARTD_ATTRS) SmallDiskMachine
SmallDiskMachine = true