I installed HTCondor 8.2.9 and turned on ALLOW_PSLOT_PREEMPTION by setting it to True on all my startds, schedds, and the negotiator. I have two startds configured as such:
ALLOW_PSLOT_PREEMPTION = True
NEGOTIATOR_USE_SLOT_WEIGHTS = true
NUM_SLOTS_TYPE_1 = 1
SLOT_TYPE_1 = 100%
SLOT_TYPE_1_PARTITIONABLE = True
SLOT_WEIGHT = Cpus
However, when enabled, I can’t get *any* pre-emption to occur. The Negotiator doesn’t even attempt to pre-empt any jobs.
When I turn off ALLOW_PSLOT_PREEMPTION, I can pre-empt like jobs that use the same resources as expected.
Has anyone else run into this?
I dug into the source code a little and it appears like jobs that want pslot preemption need ‘WantPslotPreemption’ in the ClassAd request, just to make sure, I made a job like this and even set nice_user so it could defenitley be pre-empted by any other job, but, no pre-emption occurs.
executable = /usr/bin/yes
universe = vanilla
output = /dev/null
error = /dev/null
log = /dev/null
nice_user = True
+WantPslotPreemption = True