Man Linux: Main Page and Category List

NAME

       drmaa_job_ps, drmaa_control, - Monitor and control jobs

SYNOPSIS

       #include "drmaa.h"

       int drmaa_job_ps(
              const char *job_id,
              int *remote_ps,
              char *error_diagnosis,
              size_t error_diag_len
       );

       int drmaa_control(
              const char *jobid,
              int action,
              char *error_diagnosis,
              size_t error_diag_len
       );

DESCRIPTION

       The  drmaa_job_ps()  function returns the status of the Sun Grid Engine
       job job_id into the integer pointed to by  remote_ps.  Possible  return
       values are

              DRMAA_PS_UNDETERMINED        job status cannot be determined
              DRMAA_PS_QUEUED_ACTIVE       job is queued and active
              DRMAA_PS_SYSTEM_ON_HOLD      job is queued and in system hold
              DRMAA_PS_USER_ON_HOLD        job is queued and in user hold
              DRMAA_PS_USER_SYSTEM_ON_HOLD job is queued and in user and system hold
              DRMAA_PS_RUNNING             job is running
              DRMAA_PS_SYSTEM_SUSPENDED    job is system suspended
              DRMAA_PS_USER_SUSPENDED      job is user suspended
              DRMAA_PS_DONE                job finished normally
              DRMAA_PS_FAILED              job finished, but failed

       Jobs'  user  hold  and  user  suspend  states  can  be  controlled  via
       drmaa_control(3).  For affecting system hold and system suspend  states
       the appropriate Sun Grid Engine interfaces must be used.

   drmaa_control()
       The  drmaa_control()  function  applies  control operations on Sun Grid
       Engine jobs.  jobid may contain either an  Sun  Grid  Engine  jobid  or
       `DRMAA_JOB_IDS_SESSION_ALL'  to  refer to all jobs submitted during the
       DRMAA session opened using drmaa_init(3).  Legal values for action  and
       their meanings are:

              DRMAA_CONTROL_SUSPEND        suspend the job
              DRMAA_CONTROL_RESUME         resume the job,
              DRMAA_CONTROL_HOLD           put the job on-hold
              DRMAA_CONTROL_RELEASE        release the hold on the job
              DRMAA_CONTROL_TERMINATE      kill the job

       The  DRMAA  suspend/resume operations are equivalent to the use of `-sj
       <jobid>' and `-usj <jobid>' options with Sun Grid Engine qmod(1).   The
       DRMAA  hold/release  operations  are  equivalent to the use of Sun Grid
       Engine  qhold(1)  and  qrls(1).   The  DRMAA  terminate  operation   is
       equivalent  to  the use of Sun Grid Engine qdel(1).  Only user hold and
       user suspend can be controlled  via  drmaa_control(3).   For  affecting
       system  hold  and system suspend states the appropriate Sun Grid Engine
       interfaces must be used.

ENVIRONMENTAL VARIABLES

       SGE_ROOT       Specifies the location of the Sun Grid  Engine  standard
                      configuration files.

       SGE_CELL       If set, specifies the default Sun Grid Engine cell to be
                      used. To address a Sun Grid Engine cell Sun Grid  Engine
                      uses (in the order of precedence):

                             The name of the cell specified in the environment
                             variable SGE_CELL, if it is set.

                             The name of the default cell, i.e. default.

       SGE_DEBUG_LEVEL
                      If set,  specifies  that  debug  information  should  be
                      written  to  stderr.  In addition the level of detail in
                      which debug information is generated is defined.

       SGE_QMASTER_PORT
                      If set, specifies the tcp port on  which  sge_qmaster(8)
                      is  expected to listen for communication requests.  Most
                      installations will use a services map entry  instead  to
                      define that port.

RETURN VALUES

       Upon  successful completion, drmaa_job_ps(), and drmaa_control() return
       DRMAA_ERRNO_SUCCESS.  Other   values   indicate   an   error.   Up   to
       error_diag_len  characters  of  error  related diagnosis information is
       then provided in the buffer, error_diagnosis.

ERRORS

       The drmaa_job_ps(), and drmaa_control() will fail if:

   DRMAA_ERRNO_INTERNAL_ERROR
       Unexpected or internal DRMAA error, like system call failure, etc.

   DRMAA_ERRNO_DRM_COMMUNICATION_FAILURE
       Could not contact DRM system for this request.

   DRMAA_ERRNO_AUTH_FAILURE
       The  specified  request  was  not   processed   successfully   due   to
       authorization failure.

   DRMAA_ERRNO_INVALID_ARGUMENT
       The input value for an argument is invalid.

   DRMAA_ERRNO_NO_ACTIVE_SESSION
       Failed because there is no active session.

   DRMAA_ERRNO_NO_MEMORY
       Failed allocating memory.

   DRMAA_ERRNO_INVALID_JOB
       The specified job does not exist.

       The drmaa_control() will fail if:

   DRMAA_ERRNO_RESUME_INCONSISTENT_STATE
       The job is not suspended. The resume request will not be processed.

   DRMAA_ERRNO_SUSPEND_INCONSISTENT_STATE
       The job is not running and thus cannot be suspended.

   DRMAA_ERRNO_HOLD_INCONSISTENT_STATE
       The job cannot be moved to a hold state.

   DRMAA_ERRNO_RELEASE_INCONSISTENT_STATE
       The job is not in a hold state.

SEE ALSO

       drmaa_submit(3)and drmaa_wait(3).