Wire up 6 previously-stubbed message handlers in the scheduler:
resource dataset, resval dataset, job update notify, queue update
notify, resval update notify, and job rusage notify. Remove the
unreachable pushmsg branch (vtask_entry rewrites all pushmsg to
datamsg before the handler fires).
Changes by component:
- helper.h/helper.c: add xce_notify_event_name() for symbolic log names
- scheduler.h: add 5 new xce_sched_op_t values and matching union fields
- plugin.h/plugin.c: add plugin_job_rusage_hook_t and plugin_job_rusage_update()
- schedobj.c: add sched_update_existing_queue() with NULL/-ENOENT guards
- scheduler.c: wire 5 new dequeue cases; add sched_update_existing_job()
and static sched_op_name(); emit WARN log on handler failure
- handler.c: implement sched_handle_resources/resvals (dataset) and
sched_handle_sched_update_{job,queue,resvals}/job_rusage (notify);
remove dead sched_handle_jobpush/workerpush and pushmsg branch;
update TRACE logs to use symbolic name helpers
- test.c: 5 new unit tests covering notify event names, enum values,
and queue update NULL guard (15/15 pass)
24 lines
722 B
C
24 lines
722 B
C
#if !defined(_HELPER_H_)
|
|
|
|
#define _HELPER_H_ 1
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include "typemap.h"
|
|
#include "xce/types.h"
|
|
|
|
extern void* xce_request_body(xce_request_t*);
|
|
extern char* xce_request_op_name(xce_request_t*);
|
|
extern char* xce_request_msg_name(xce_request_t*);
|
|
extern void* xce_val_ptr(xce_val_t*);
|
|
extern void* xce_val_ptr(xce_val_t*);
|
|
extern void* xce_configdata_ptr(xce_configdata_t*);
|
|
extern void* xce_data_ptr(xce_data_t*);
|
|
extern void* xce_update_data_ptr(xce_update_data_t*);
|
|
extern void* xce_notify_data_ptr(xce_notify_data_t*);
|
|
extern void* xce_jobctrl_data_ptr(xce_jobctrl_t*);
|
|
extern void* xce_reply_data_ptr(xce_reply_t*);
|
|
extern char* xce_dataset_table(int);
|
|
extern char* xce_notify_event_name(int);
|
|
|
|
#endif
|