diff --git a/src/api/federation_info.c b/src/api/federation_info.c index 0d765b64e3513c831bb6b46975505b2a42f8f22b..2cf02465d36dd68775a4175cecba50a0eaa66562 100644 --- a/src/api/federation_info.c +++ b/src/api/federation_info.c @@ -100,7 +100,7 @@ extern void slurm_print_federation(void *ptr) slurmdb_cluster_rec_t *cluster; int left_col_size; char *conn_status[] = {"Disconnected", "Connected"}; - char *cluster_name = slurm_get_cluster_name(); + char *cluster_name = NULL; slurmdb_federation_rec_t *fed = (slurmdb_federation_rec_t *)ptr; @@ -109,6 +109,8 @@ extern void slurm_print_federation(void *ptr) if (!fed->name) return; + cluster_name = slurm_get_cluster_name(); + left_col_size = strlen("federation:"); printf("%-*s %s\n", left_col_size, "Federation:", fed->name); list_sort(fed->cluster_list, (ListCmpF)_sort_clusters_by_name); diff --git a/src/plugins/accounting_storage/mysql/as_mysql_federation.c b/src/plugins/accounting_storage/mysql/as_mysql_federation.c index 9baf6f7cff7292afc26fc4f3f22b09b25c404b95..df28f899154cb2064522a031f47696798be98ed6 100644 --- a/src/plugins/accounting_storage/mysql/as_mysql_federation.c +++ b/src/plugins/accounting_storage/mysql/as_mysql_federation.c @@ -367,6 +367,7 @@ extern int as_mysql_add_federations(mysql_conn_t *mysql_conn, uint32_t uid, xfree(cols); xfree(vals); xfree(extra); + xfree(user_name); return SLURM_ERROR; } diff --git a/src/sacctmgr/cluster_functions.c b/src/sacctmgr/cluster_functions.c index d9e6c5bfd9f0562adc12dfd38a8138a7a01d379a..9ecb3f8c12cc4d7b18f92a9e34e95f786e7a630c 100644 --- a/src/sacctmgr/cluster_functions.c +++ b/src/sacctmgr/cluster_functions.c @@ -356,7 +356,7 @@ extern int sacctmgr_add_cluster(int argc, char *argv[]) } } - if (start_cluster && start_cluster->fed.name) { + if (start_cluster->fed.name) { int rc; List fed_list = list_create(slurm_destroy_char); list_append(fed_list, xstrdup(start_cluster->fed.name)); diff --git a/src/sacctmgr/federation_functions.c b/src/sacctmgr/federation_functions.c index 2bf270c47a705244c92de9a6ef2c19d0979fcce6..970951ff5edaee595dfc78b47006039004ac6097 100644 --- a/src/sacctmgr/federation_functions.c +++ b/src/sacctmgr/federation_functions.c @@ -42,7 +42,6 @@ static int _set_cond(int *start, int argc, char *argv[], List format_list) { int i; - int c_set = 0; int a_set = 0; int end = 0; int command_len = 0; @@ -96,13 +95,7 @@ static int _set_cond(int *start, int argc, char *argv[], } (*start) = i; - if (c_set && a_set) - return 3; - else if (a_set) { - return 2; - } else if (c_set) - return 1; - return 0; + return a_set; } static int _set_rec(int *start, int argc, char *argv[], diff --git a/src/slurmctld/fed_mgr.c b/src/slurmctld/fed_mgr.c index 4048f6a8624cfa58438f563787da634f86b7ca68..9e33109d10ae41ac2df79bca3640397501702fcb 100644 --- a/src/slurmctld/fed_mgr.c +++ b/src/slurmctld/fed_mgr.c @@ -410,9 +410,12 @@ extern int fed_mgr_state_save(char *state_save_location) pack_time(time(NULL), buffer); memset(&msg, 0, sizeof(dbd_list_msg_t)); + + slurm_mutex_lock(&fed_mutex); msg.my_list = fed_mgr_siblings; slurmdbd_pack_list_msg(&msg, SLURM_PROTOCOL_VERSION, DBD_ADD_CLUSTERS, buffer); + slurm_mutex_unlock(&fed_mutex); /* write the buffer to file */ reg_file = xstrdup_printf("%s/%s", state_save_location, @@ -562,8 +565,7 @@ extern int fed_mgr_state_load(char *state_save_location) return SLURM_SUCCESS; unpack_error: - if (buffer) - free_buf(buffer); + free_buf(buffer); slurm_mutex_unlock(&fed_mutex); return SLURM_ERROR;