Thanks for finding this Carles. As you can see from our last email we tagged a 2.4.1 and removed 2.4.0 from download so others wouldn't experience the same fate as you. In addition to your patch I added some logic to figure out we really were running 2.4 to avoid those already running 2.4.* to loose job state. Sorry I misspelled your name on the earlier email as well, I know you aren't Charles :).

Danny

On 07/02/12 08:19, Carles Fenoy wrote:
Problems upgrading to 2.4.0 Hi all,

I've found that upgrading from 2.3.5 to 2.4.0 slurm loses all the jobs because of wrong job state file. I've made a patch to solve this issue.

Regards,
Carles Fenoy



diff -Naur slurm-2.4.0/src/slurmctld/job_mgr.c slurm-2.4.0_b/src/slurmctld/job_mgr.c --- slurm-2.4.0/src/slurmctld/job_mgr.c 2012-06-28 22:25:39.000000000 +0200 +++ slurm-2.4.0_b/src/slurmctld/job_mgr.c 2012-07-02 16:50:34.723532071 +0200
@@ -101,7 +101,7 @@
 #define JOB_HASH_INX(_job_id)    (_job_id % hash_table_size)

 /* Change JOB_STATE_VERSION value when changing the state save format */
-#define JOB_STATE_VERSION      "VER011"
+#define JOB_STATE_VERSION      "VER012"
 #define JOB_2_3_STATE_VERSION  "VER011"        /* SLURM version 2.3 */
 #define JOB_2_2_STATE_VERSION  "VER010"        /* SLURM version 2.2 */
 #define JOB_2_1_STATE_VERSION  "VER009"        /* SLURM version 2.1 */
@@ -624,6 +624,8 @@
     if (ver_str) {
         if (!strcmp(ver_str, JOB_STATE_VERSION)) {
             protocol_version = SLURM_PROTOCOL_VERSION;
+        } else if (!strcmp(ver_str, JOB_2_3_STATE_VERSION)) {
+            protocol_version = SLURM_2_3_PROTOCOL_VERSION;
         } else if (!strcmp(ver_str, JOB_2_2_STATE_VERSION)) {
             protocol_version = SLURM_2_2_PROTOCOL_VERSION;
         } else if (!strcmp(ver_str, JOB_2_1_STATE_VERSION)) {





Reply via email to