From 1eaacd8b9a52408f872ae51e32b276f57dabbdd8 Mon Sep 17 00:00:00 2001 From: mightqxc Date: Tue, 15 Jul 2025 12:46:38 +0200 Subject: [PATCH 1/2] log job ids of XJobCleaner; v2.0.4 --- lib/hgcs/agents.py | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/lib/hgcs/agents.py b/lib/hgcs/agents.py index 6f6bc79..aed9e78 100644 --- a/lib/hgcs/agents.py +++ b/lib/hgcs/agents.py @@ -436,12 +436,20 @@ def run(self): res_str = str(None) try: requirements = self.requirements_template.format(grace_period=int(self.grace_period)) - self.logger.debug("try to remove-x jobs") - with global_lock: - act_ret = schedd.act(htcondor.JobAction.RemoveX, requirements) + jobs_iter = schedd.query(constraint=requirements, projection=["ClusterId", "ProcId"]) + n_jobs = 0 + for job in jobs_iter: + job_id = get_condor_job_id(job) + self.logger.debug(f"to remove condor job {job_id}") + n_jobs += 1 + if n_jobs == 0: + self.logger.info("no job to remove; skipped") + else: + self.logger.debug(f"try to remove-x {n_jobs} jobs") + with global_lock: + act_ret = schedd.act(htcondor.JobAction.RemoveX, requirements) + res_str = str(dict(act_ret)) + self.logger.info(f"run ends; return: {res_str}") except RuntimeError as exc: self.logger.error(f"Failed to remove-x jobs. Exit. RuntimeError: {exc} ") - else: - res_str = str(dict(act_ret)) - self.logger.info(f"run ends; return: {res_str}") time.sleep(self.sleep_period) From 3206e83047e0584d3f123e39cec9704fa9c1f33e Mon Sep 17 00:00:00 2001 From: mightqxc Date: Tue, 15 Jul 2025 12:46:47 +0200 Subject: [PATCH 2/2] v2.0.4 --- pkg_info.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg_info.py b/pkg_info.py index 3ad84ba..810b9b2 100644 --- a/pkg_info.py +++ b/pkg_info.py @@ -1 +1 @@ -release_version = "2.0.3" +release_version = "2.0.4"