myxce/src/include/helper.h
Rongsong Shen 3e652d2d7e feat: fill scheduler controller message gaps
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)
2026-05-12 07:01:52 +00:00

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