save works
This commit is contained in:
parent
47fc32b02c
commit
43dc12a36c
19 changed files with 80 additions and 72 deletions
|
|
@ -11,6 +11,7 @@
|
|||
#include "utils.h"
|
||||
#include "xcelimit.h"
|
||||
#include "xlist.h"
|
||||
#include "xstring.h"
|
||||
|
||||
typedef struct {
|
||||
var limits;
|
||||
|
|
@ -398,7 +399,7 @@ static int build_limit_vres_requests(xce_scheduler_t* sched,
|
|||
continue;
|
||||
}
|
||||
|
||||
rq->res = strdup(vres->vres->name);
|
||||
rq->res = makeString(vres->vres->name);
|
||||
rq->value = get_vres_value(ctx, vres);
|
||||
|
||||
xlist_store(requests, rq);
|
||||
|
|
|
|||
|
|
@ -342,8 +342,8 @@ static int sched_update_res_accounts(xce_scheduler_t* sched, zarray_t* array,
|
|||
|
||||
for (i = 0; i < naccounts; i++) {
|
||||
float val = accounts[i]->used + accounts[i]->reserved;
|
||||
TRACE("%s resource %d old %f delta %f charge %d", __func__, vals[i],
|
||||
val, charge);
|
||||
TRACE("%s resource %d old %f delta %f charge %d", __func__, idxs[i],
|
||||
vals[i], val, charge);
|
||||
if (charge) {
|
||||
vals[i] += val;
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@
|
|||
#include "xcealloc.h"
|
||||
#include "xlist.h"
|
||||
#include "xvec.h"
|
||||
#include "xstring.h"
|
||||
|
||||
void kill_sched_job(void* arg)
|
||||
{
|
||||
|
|
@ -29,7 +30,7 @@ request_res_t* make_resource_request(char* res, float value)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
req->res = strdup(res);
|
||||
req->res = makeString(res);
|
||||
req->value = value;
|
||||
|
||||
return req;
|
||||
|
|
@ -111,9 +112,9 @@ static int make_sched_obj(xce_sched_obj_t* obj, xce_scheduler_t* sched,
|
|||
{
|
||||
int rc = 0;
|
||||
|
||||
obj->user = strdup(j->submit->user);
|
||||
obj->queue = strdup(j->submit->queue);
|
||||
obj->project = strdup(j->submit->project_name);
|
||||
obj->user = makeString(j->submit->user);
|
||||
obj->queue = makeString(j->submit->queue);
|
||||
obj->project = makeString(j->submit->project_name);
|
||||
|
||||
xlist_init(&(obj->glimits), 8);
|
||||
zarray_init(&(obj->hlimits), 32, NULL);
|
||||
|
|
@ -218,7 +219,7 @@ xce_sched_queue_t* make_sched_queue(void* arg, xce_queue_t* q)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
queue->name = strdup(q->queue);
|
||||
queue->name = makeString(q->queue);
|
||||
queue->attrs = q->attrs;
|
||||
queue->status = q->status;
|
||||
queue->priority = q->priority;
|
||||
|
|
@ -259,7 +260,7 @@ xce_sched_worker_t* make_sched_worker(void* arg, xce_worker_t* w)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
worker->name = strdup(w->name);
|
||||
worker->name = makeString(w->name);
|
||||
worker->status = w->status;
|
||||
worker->idx = -1;
|
||||
|
||||
|
|
@ -288,7 +289,7 @@ void kill_sched_user(void* arg)
|
|||
return;
|
||||
}
|
||||
|
||||
FREEUP(user->name);
|
||||
dereference(user->name);
|
||||
FREEUP(user);
|
||||
}
|
||||
|
||||
|
|
@ -302,7 +303,7 @@ xce_sched_user_t* make_sched_user(void* arg, char* name)
|
|||
return NULL;
|
||||
}
|
||||
|
||||
user->name = strdup(name);
|
||||
user->name = makeString(name);
|
||||
|
||||
sched_add_user(sched, user);
|
||||
|
||||
|
|
@ -317,7 +318,7 @@ void kill_sched_project(void* arg)
|
|||
return;
|
||||
}
|
||||
|
||||
FREEUP(project->name);
|
||||
dereference(project->name);
|
||||
FREEUP(project);
|
||||
}
|
||||
|
||||
|
|
@ -332,9 +333,9 @@ xce_sched_project_t* make_sched_project(void* arg, char* name)
|
|||
}
|
||||
|
||||
if ((name == NULL) || (strlen(name) == 0)) {
|
||||
project->name = strdup("default");
|
||||
project->name = makeString("default");
|
||||
} else {
|
||||
project->name = strdup(name);
|
||||
project->name = makeString(name);
|
||||
}
|
||||
|
||||
sched_add_project(sched, project);
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@
|
|||
#include "misc.h"
|
||||
#include "plugin.h"
|
||||
#include "preason.h"
|
||||
#include "resobj.h"
|
||||
#include "scheduler.h"
|
||||
#include "utils.h"
|
||||
#include "xcealloc.h"
|
||||
|
|
@ -465,11 +466,18 @@ static int sched_init_resources(xce_scheduler_t* sched)
|
|||
xce_conf4sched_t* config = sched->config;
|
||||
|
||||
for (i = 0; i < config->n_resources; i++) {
|
||||
xce_resource_t* r = config->resources[i];
|
||||
xce_resource_t* r = config->resources[i];
|
||||
xce_resource_t* r1 = NULL;
|
||||
|
||||
lock(sched->resmgr, RTTI_LOCK_WRITE);
|
||||
key_add(sched->resmgr, (void*)r->name, (void*)r);
|
||||
unlock(sched->resmgr);
|
||||
if (r == NULL) {
|
||||
continue;
|
||||
}
|
||||
|
||||
r1 = makeResource(sched->resmgr, r);
|
||||
|
||||
if (r1 == NULL) {
|
||||
ERROR("%s add resource %s failed", __func__, r->name);
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue