From 64cf9d60f4e2849d30deb7e20353fd15c77b9f68 Mon Sep 17 00:00:00 2001
From: Moe Jette <jette1@llnl.gov>
Date: Mon, 1 Jun 2009 23:53:07 +0000
Subject: [PATCH] Modify squeue sort field options to match output field option
 changes recently made by Don.

---
 NEWS              |  7 +++----
 src/squeue/sort.c | 52 ++---------------------------------------------
 2 files changed, 5 insertions(+), 54 deletions(-)

diff --git a/NEWS b/NEWS
index 4fc5b5542f3..bc20f04ea94 100644
--- a/NEWS
+++ b/NEWS
@@ -13,10 +13,9 @@ documents those changes that are of interest to users and admins.
  -- Added support for Solaris. Patch from David Hoppner.
  -- Rename "slurm-aix-federation-<version>.rpm" to just 
     "slurm-aix-<version>.rpm" (federation switch plugin may not be present).
- -- Eliminated the redundant squeue -o "%D" and "%b" formats.
-    Instead, use the squeue -o "%o" and "%S" formats respectively.
- -- Eliminated the redundant squeue -o "%X" and "%Y" and "%Z" formats.
-    Instead, use the squeue -o "%z" format.
+ -- Eliminated the redundant squeue output format and sort options of 
+    "%D" and "%b". Use "%o" and "%S" formats respectively. Also eliminated 
+    "%X" and "%Y" and "%Z" formats. Use "%z" instead.
  -- Added mechanism for SPANK plugins to set environment variables for
     Prolog, Epilog, PrologSLurmctld and EpilogSlurmctld programs using
     the functions spank_get_job_env, spank_set_job_env, and 
diff --git a/src/squeue/sort.c b/src/squeue/sort.c
index 1deeb837b44..26917f996d3 100644
--- a/src/squeue/sort.c
+++ b/src/squeue/sort.c
@@ -63,9 +63,6 @@ static int _sort_job_by_time_used(void *void1, void *void2);
 static int _sort_job_by_node_list(void *void1, void *void2);
 static int _sort_job_by_num_nodes(void *void1, void *void2);
 static int _sort_job_by_num_procs(void *void1, void *void2);
-static int _sort_job_by_num_sockets(void *void1, void *void2);
-static int _sort_job_by_num_cores(void *void1, void *void2);
-static int _sort_job_by_num_threads(void *void1, void *void2);
 static int _sort_job_by_num_sct(void *void1, void *void2);
 static int _sort_job_by_min_sockets(void *void1, void *void2);
 static int _sort_job_by_min_cores(void *void1, void *void2);
@@ -111,8 +108,6 @@ void sort_job_list(List job_list)
 			list_sort(job_list, _sort_job_by_num_procs);
 		else if (params.sort[i] == 'd')
 			list_sort(job_list, _sort_job_by_min_tmp_disk);
-		else if (params.sort[i] == 'D')
-			list_sort(job_list, _sort_job_by_num_nodes);
 		else if (params.sort[i] == 'e')
 			list_sort(job_list, _sort_job_by_time_end);
 		else if (params.sort[i] == 'f')
@@ -143,6 +138,8 @@ void sort_job_list(List job_list)
 			;	/* sort_job_by_nodes_requested */
 		else if (params.sort[i] == 'N')
 			list_sort(job_list, _sort_job_by_node_list);
+		else if (params.sort[i] == 'o')
+			list_sort(job_list, _sort_job_by_num_nodes);
 		else if (params.sort[i] == 'O')
 			;	/* sort_job_by_contiguous */
 		else if (params.sort[i] == 'p')
@@ -161,12 +158,6 @@ void sort_job_list(List job_list)
 			list_sort(job_list, _sort_job_by_user_id);
 		else if (params.sort[i] == 'v')
 			list_sort(job_list, _sort_job_by_reservation);
-		else if (params.sort[i] == 'X')
-			list_sort(job_list, _sort_job_by_num_sockets);
-		else if (params.sort[i] == 'Y')
-			list_sort(job_list, _sort_job_by_num_cores);
-		else if (params.sort[i] == 'Z')
-			list_sort(job_list, _sort_job_by_num_threads);
 		else if (params.sort[i] == 'z')
 			list_sort(job_list, _sort_job_by_num_sct);
 	}
@@ -357,45 +348,6 @@ static int _sort_job_by_num_procs(void *void1, void *void2)
 	return diff;
 }
 
-static int _sort_job_by_num_sockets(void *void1, void *void2)
-{
-	int diff;
-	job_info_t *job1 = (job_info_t *) void1;
-	job_info_t *job2 = (job_info_t *) void2;
-
-	diff = job1->min_sockets - job2->min_sockets;
-
-	if (reverse_order)
-		diff = -diff;
-	return diff;
-}
-
-static int _sort_job_by_num_cores(void *void1, void *void2)
-{
-	int diff;
-	job_info_t *job1 = (job_info_t *) void1;
-	job_info_t *job2 = (job_info_t *) void2;
-
-	diff = job1->min_cores - job2->min_cores;
-
-	if (reverse_order)
-		diff = -diff;
-	return diff;
-}
-
-static int _sort_job_by_num_threads(void *void1, void *void2)
-{
-	int diff;
-	job_info_t *job1 = (job_info_t *) void1;
-	job_info_t *job2 = (job_info_t *) void2;
-
-	diff = job1->min_threads - job2->min_threads;
-
-	if (reverse_order)
-		diff = -diff;
-	return diff;
-}
-
 static int _sort_job_by_num_sct(void *void1, void *void2)
 {
 	int diffs, diffc, difft;
-- 
GitLab