From a96e33a573ca2e1f8b023beee3cd92176abc3493 Mon Sep 17 00:00:00 2001
From: Moe Jette <jette1@llnl.gov>
Date: Thu, 14 Oct 2004 21:44:51 +0000
Subject: [PATCH] Modify node hash index computation.

---
 src/slurmctld/node_mgr.c | 56 ++++------------------------------------
 1 file changed, 5 insertions(+), 51 deletions(-)

diff --git a/src/slurmctld/node_mgr.c b/src/slurmctld/node_mgr.c
index 2c1e88f3792..f9fb573bddb 100644
--- a/src/slurmctld/node_mgr.c
+++ b/src/slurmctld/node_mgr.c
@@ -478,61 +478,15 @@ find_node_record (char *name)
  */
 static int _hash_index (char *name) 
 {
-	int i, inx = 0, tmp;
+	int i = 0;
 
 	if (node_record_count == 0)
 		return 0;	/* degenerate case */
 
-	if ( slurmctld_conf.hash_base == 10 ) {
-		for (i = 0;; i++) {
-			tmp = (int) name[i];
-			if (tmp == 0)
-				break;	/* end if string */
-			if ((tmp >= (int) '0') && (tmp <= (int) '9'))
-				inx = (inx * slurmctld_conf.hash_base) + 
-				      (tmp - (int) '0');
-		}
-	}
-
-	else if ( slurmctld_conf.hash_base == 8 ) {
-		for (i = 0;; i++) {
-			tmp = (int) name[i];
-			if (tmp == 0)
-				break;	/* end if string */
-			if ((tmp >= (int) '0') && (tmp <= (int) '7'))
-				inx = (inx * slurmctld_conf.hash_base) + 
-				      (tmp - (int) '0');
-		}
-	}
-
-	else {
-		for (i = 0; i < 5; i++) {
-			tmp = (int) name[i];
-			if (tmp == 0)
-				break;	/* end if string */
-			if ((tmp >= (int) '0') && (tmp <= (int) '9')) {	
-				/* value 0-9 */
-				tmp -= (int) '0';
-				}
-			else if ((tmp >= (int) 'a') && (tmp <= (int) 'z')) {
-				/* value 10-35 */
-				tmp -= (int) 'a';
-				tmp += 10;
-			}
-			else if ((tmp >= (int) 'a') && (tmp <= (int) 'z')) {
-				/* value 10-35 */
-				tmp -= (int) 'a';
-				tmp += 10;
-			}
-			else {
-				tmp = 36;
-			}
-			inx = (inx * 37) + tmp;
-		}
-	}
-
-	inx = inx % node_record_count;
-	return inx;
+	while (*name)
+		i += (int) *name++;
+	i %= node_record_count;
+	return i;
 }
 
 
-- 
GitLab