From 6c892ad5f6d642a24cf5e8a89c9f213a9a4b3ce7 Mon Sep 17 00:00:00 2001
From: Moe Jette <jette1@llnl.gov>
Date: Wed, 15 Nov 2006 17:28:37 +0000
Subject: [PATCH] Fix memory leaks associated with job requeue.

---
 src/slurmctld/node_scheduler.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/slurmctld/node_scheduler.c b/src/slurmctld/node_scheduler.c
index 23742f456ce..8f61b1f2bd3 100644
--- a/src/slurmctld/node_scheduler.c
+++ b/src/slurmctld/node_scheduler.c
@@ -1075,6 +1075,12 @@ extern int select_nodes(struct job_record *job_ptr, bool test_only,
 		goto cleanup;
 	}
 
+	/* This job may be getting requeued, clear vestigial 
+	 * state information before over-writting and leaking 
+	 * memory. */
+	FREE_NULL_BITMAP(job_ptr->node_bitmap);
+	xfree(job_ptr->nodes);
+
 	job_ptr->node_bitmap = select_bitmap;
 	if (select_g_job_begin(job_ptr) != SLURM_SUCCESS) {
 		/* Leave job queued, something is hosed */
-- 
GitLab