Loading...
Searching...
No Matches
Scheduler Implementation API
Scheduler Event Generator

Scheduler Implementation API. More...

## Enumerations

enum | globus_scheduler_event_generator_error_t { GLOBUS_SEG_ERROR_TYPE_NULL = 1024 , GLOBUS_SEG_ERROR_TYPE_ALREADY_SET , GLOBUS_SEG_ERROR_TYPE_INVALID_MODULE , GLOBUS_SEG_ERROR_TYPE_INVALID_FORMAT , GLOBUS_SEG_ERROR_TYPE_OUT_OF_MEMORY , GLOBUS_SEG_ERROR_TYPE_LOADING_MODULE }

## Detailed Description

Scheduler Implementation API.

Scheduler-specific SEG module implementations use this API to issue events to the Job State Monitor. Events occur whenever a job is placed in the scheduler's queue (PENDING), begins execution (ACTIVE), terminates successfully (DONE), or ends abnormally (FAILED).

A SEG module should register an event with the Globus event driver (most likely using either the Globus Callback or Globus XIO interfaces) in its activation function and then return. All events should be triggered from callbacks. When the SEG detects that it should terminate, it will deactivate the SEG module it started. The SEG module should wait for any outstanding callbacks to subside and before returning from its deactivation function to ensure that all events will be properly dispatched. After deactivation is complete, the SEG will unload the shared module and terminate.

## Enumeration Type Documentation

## globus_scheduler_event_generator_error_t

enum globus_scheduler_event_generator_error_t

Error types used by the SEG.

Enumerator
GLOBUS_SEG_ERROR_TYPE_NULL | NULL Parameter
GLOBUS_SEG_ERROR_TYPE_ALREADY_SET | Already called a one-time function
GLOBUS_SEG_ERROR_TYPE_INVALID_MODULE | Shared module missing descriptor
GLOBUS_SEG_ERROR_TYPE_INVALID_FORMAT | Invalid printf format for SEG protocol message
GLOBUS_SEG_ERROR_TYPE_OUT_OF_MEMORY | Out of memory
GLOBUS_SEG_ERROR_TYPE_LOADING_MODULE | Unable to load scheduler module