Changeset 87 for trunk/pbs_drmaa/job.c


Ignore:
Timestamp:
02/11/13 14:10:39 (13 years ago)
Author:
mmamonski
Message:

BUMP version 1.0.13

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/pbs_drmaa/job.c

    r85 r87  
    8282        fsd_log_enter(( "({job_id=%s}, action=%d)", self->job_id, action )); 
    8383 
    84         while ( true ) 
    85          { 
    86                 switch( action ) 
    87                  { 
    88                         /* 
    89                          * We cannot know whether we did suspend job 
    90                          * in other way than remembering this inside DRMAA session. 
    91                          */ 
    92                         case DRMAA_CONTROL_SUSPEND: 
    93                                 session->pbs_connection->sigjob( session->pbs_connection, (char*)job_id, "SIGSTOP"); 
    94                                 self->flags |= FSD_JOB_SUSPENDED; 
    95                                 break; 
    96                         case DRMAA_CONTROL_RESUME: 
    97                                 session->pbs_connection->sigjob( session->pbs_connection, (char*)job_id, "SIGCONT"); 
    98                                 self->flags &= ~FSD_JOB_SUSPENDED; 
    99                                 break; 
    100                         case DRMAA_CONTROL_HOLD: 
    101                                 session->pbs_connection->holdjob( session->pbs_connection, (char*)job_id ); 
    102                                 self->flags |= FSD_JOB_HOLD; 
    103                                 break; 
    104                         case DRMAA_CONTROL_RELEASE: 
    105                                 session->pbs_connection->rlsjob( session->pbs_connection, (char*)job_id ); 
    106                                 self->flags &= ~FSD_JOB_HOLD; 
    107                                 break; 
    108                         case DRMAA_CONTROL_TERMINATE: 
    109                                 session->pbs_connection->deljob( session->pbs_connection, (char*)job_id ); 
    110                                 /* TODO: make deldelay configurable ???: 
    111                                  * deldelay=N -- delay between SIGTERM and SIGKILL (default 0) */ 
    112                                 self->flags &= FSD_JOB_TERMINATED_MASK; 
    113                                 if( (self->flags & FSD_JOB_TERMINATED) == 0 ) 
    114                                         self->flags |= FSD_JOB_TERMINATED | FSD_JOB_ABORTED; 
    115                                 break; 
    116                  } 
     84        switch( action ) 
     85         { 
     86                /* 
     87                 * We cannot know whether we did suspend job 
     88                 * in other way than remembering this inside DRMAA session. 
     89                 */ 
     90                case DRMAA_CONTROL_SUSPEND: 
     91                        session->pbs_connection->sigjob( session->pbs_connection, (char*)job_id, "SIGSTOP"); 
     92                        self->flags |= FSD_JOB_SUSPENDED; 
     93                        break; 
     94                case DRMAA_CONTROL_RESUME: 
     95                        session->pbs_connection->sigjob( session->pbs_connection, (char*)job_id, "SIGCONT"); 
     96                        self->flags &= ~FSD_JOB_SUSPENDED; 
     97                        break; 
     98                case DRMAA_CONTROL_HOLD: 
     99                        session->pbs_connection->holdjob( session->pbs_connection, (char*)job_id ); 
     100                        self->flags |= FSD_JOB_HOLD; 
     101                        break; 
     102                case DRMAA_CONTROL_RELEASE: 
     103                        session->pbs_connection->rlsjob( session->pbs_connection, (char*)job_id ); 
     104                        self->flags &= ~FSD_JOB_HOLD; 
     105                        break; 
     106                case DRMAA_CONTROL_TERMINATE: 
     107                        session->pbs_connection->deljob( session->pbs_connection, (char*)job_id ); 
     108                        /* TODO: make deldelay configurable ???: 
     109                         * deldelay=N -- delay between SIGTERM and SIGKILL (default 0) */ 
     110                        self->flags &= FSD_JOB_TERMINATED_MASK; 
     111                        if( (self->flags & FSD_JOB_TERMINATED) == 0 ) 
     112                                self->flags |= FSD_JOB_TERMINATED | FSD_JOB_ABORTED; 
     113                        break; 
    117114         } 
    118115 
Note: See TracChangeset for help on using the changeset viewer.