From 9340e67d73a0e7e7074334749ab9e695cf266870 Mon Sep 17 00:00:00 2001
From: Moe Jette <jette1@llnl.gov>
Date: Mon, 11 Dec 2006 23:29:29 +0000
Subject: [PATCH] svn merge -r10436:10439
 https://eris.llnl.gov/svn/slurm/branches/slurm-1.1

---
 NEWS                               | 1 +
 src/plugins/sched/wiki/get_jobs.c  | 6 ++++++
 src/plugins/sched/wiki2/get_jobs.c | 6 ++++++
 3 files changed, 13 insertions(+)

diff --git a/NEWS b/NEWS
index e28b7b68c3e..5f5cc22184e 100644
--- a/NEWS
+++ b/NEWS
@@ -168,6 +168,7 @@ documents those changes that are of interest to users and admins.
  - Add squeue option to print a job step's task count (-o %A).
  - Initialize forward_struct to avoid trying to free a bad pointer,
    patch from Anton Blanchard (SAMBA).
+ - In sched/wiki2, fix fatal race condition on slurmctld startup.
 
 * Changes in SLURM 1.1.21
 =========================
diff --git a/src/plugins/sched/wiki/get_jobs.c b/src/plugins/sched/wiki/get_jobs.c
index 234b5122cfe..2b067b31ace 100644
--- a/src/plugins/sched/wiki/get_jobs.c
+++ b/src/plugins/sched/wiki/get_jobs.c
@@ -99,6 +99,12 @@ extern int	get_jobs(char *cmd_ptr, int *err_code, char **err_msg)
 		error("wiki: GETJOBS has invalid ARG value");
 		return -1;
 	}
+	if (job_list == NULL) {
+		*err_code = -140;
+		*err_msg = "Still performing initialization";
+		error("wiki: job_list not yet initilized");
+		return -1;
+	}
 	tmp_char++;
 	lock_slurmctld(job_read_lock);
 	if (update_time == 0)
diff --git a/src/plugins/sched/wiki2/get_jobs.c b/src/plugins/sched/wiki2/get_jobs.c
index eabd6011432..34b35981518 100644
--- a/src/plugins/sched/wiki2/get_jobs.c
+++ b/src/plugins/sched/wiki2/get_jobs.c
@@ -99,6 +99,12 @@ extern int	get_jobs(char *cmd_ptr, int *err_code, char **err_msg)
 		error("wiki: GETJOBS has invalid ARG value");
 		return -1;
 	}
+	if (job_list == NULL) {
+		*err_code = -140;
+		*err_msg = "Still performing initialization";
+		error("wiki: job_list not yet initilized");
+		return -1;
+	}
 	tmp_char++;
 	lock_slurmctld(job_read_lock);
 	if (update_time == 0)
-- 
GitLab