WANT_HOLD does work on Windows, but it will have no effect unless PREEMPT is also set.
You can think of WANT_HOLD is a modifier on the PREEMPT _expression_. it is what to do *after* preempt triggers.
Detection of excessive memory use on Windows is slower than on Linux with cgroups, but it does work.
-tj From: HTCondor-users <htcondor-users-bounces@xxxxxxxxxxx>
On Behalf Of Serafim Urukov via HTCondor-users I am experiencing a problem with WANT_HOLD configuration on Windows. Originally it was like this # Limiting Job memory consumption. MEMORY_EXCEEDED = ((MemoryUsage > Memory) =?= TRUE) PREEMPT = ($(PREEMPT)) || $(MEMORY_EXCEEDED) WANT_SUSPEND = $(WANT_SUSPEND) && $(MEMORY_EXCEEDED) WANT_HOLD = $(MEMORY_EXCEEDED) WANT_HOLD_REASON = ifThenElse( $(MEMORY_EXCEEDED), \ strcat("Memory limit exceeded: ", eval(MemoryUsage), " MB > ", eval(Memory), " MB"), \ undefined ) This part of config works as expected on Linux, but neglected on Windows. I supposed that is related
with config syntax, but there is no errors traced in logs. Moreover, even if I set literally WANT_HOLD = TRUE, nothing happens. I haven't found something related to "platform
specific" for this case. My job is a demo script that consumes about ~1 MiB of memory each 0.5 s. Expected behavior: when job uses a lot of memory it should be stopped by WANT_HOLD. Real behavior: job runs infinite, OS Windows even involves swap memory. OS: Windows 10 Pro 21H2 19044.2251 HTCondor: 8.9.11 Does WANT_HOLD work on Windows? -- |