Changeset 25 for trunk/pbs_drmaa/job.c
- Timestamp:
- 10/11/11 18:17:43 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/pbs_drmaa/job.c
r22 r25 207 207 if( status == NULL ) 208 208 { 209 if(pbsdrmaa_job_update_status_accounting(self) == false) 210 { 211 #ifndef PBS_PROFESSIONAL 212 fsd_log_error(("pbs_statjob error: %d, %s, %s", pbs_errno, pbse_to_txt(pbs_errno), pbs_strerror(pbs_errno))); 213 #else 214 # ifndef PBS_PROFESSIONAL_NO_LOG 215 fsd_log_error(("pbs_statjob error: %d, %s", pbs_errno, pbse_to_txt(pbs_errno))); 216 # else 217 fsd_log_error(("pbs_statjob error: %d", pbs_errno)); 218 # endif 219 #endif 220 221 /**/ 222 223 switch( pbs_errno ) 224 { 225 case PBSE_UNKJOBID: 226 break; 227 case PBSE_PROTOCOL: 228 case PBSE_EXPIRED: 229 if ( session->pbs_conn >= 0 ) 230 pbs_disconnect( session->pbs_conn ); 231 sleep(1); 232 session->pbs_conn = pbs_connect( session->super.contact ); 233 if( session->pbs_conn < 0 ) 234 pbsdrmaa_exc_raise_pbs( "pbs_connect" ); 235 else 236 { 237 fsd_log_error(("retry:")); 238 goto retry; 239 } 240 default: 241 pbsdrmaa_exc_raise_pbs( "pbs_statjob" ); 242 break; 243 case 0: /* ? */ 244 fsd_exc_raise_code( FSD_ERRNO_INTERNAL_ERROR ); 245 break; 246 } 209 210 #ifndef PBS_PROFESSIONAL 211 fsd_log_error(("pbs_statjob error: %d, %s, %s", pbs_errno, pbse_to_txt(pbs_errno), pbs_strerror(pbs_errno))); 212 #else 213 # ifndef PBS_PROFESSIONAL_NO_LOG 214 fsd_log_error(("pbs_statjob error: %d, %s", pbs_errno, pbse_to_txt(pbs_errno))); 215 # else 216 fsd_log_error(("pbs_statjob error: %d", pbs_errno)); 217 # endif 218 #endif 219 220 switch( pbs_errno ) 221 { 222 case PBSE_UNKJOBID: 223 break; 224 case PBSE_PROTOCOL: 225 case PBSE_EXPIRED: 226 if ( session->pbs_conn >= 0 ) 227 pbs_disconnect( session->pbs_conn ); 228 sleep(1); 229 session->pbs_conn = pbs_connect( session->super.contact ); 230 if( session->pbs_conn < 0 ) 231 pbsdrmaa_exc_raise_pbs( "pbs_connect" ); 232 else 233 { 234 fsd_log_error(("retry:")); 235 goto retry; 236 } 237 default: 238 pbsdrmaa_exc_raise_pbs( "pbs_statjob" ); 239 break; 240 case 0: /* ? */ 241 fsd_exc_raise_code( FSD_ERRNO_INTERNAL_ERROR ); 242 break; 247 243 } 244 248 245 } 249 246 250 247 conn_lock = fsd_mutex_unlock( &self->session->drm_connection_mutex ); 251 248 249 if(pbsdrmaa_job_update_status_accounting(self) == false) 250 251 252 252 if( status != NULL ) 253 253 { … … 255 255 } 256 256 else if( self->state < DRMAA_PS_DONE ) 257 { 258 #ifndef PBS_PROFESSIONAL 259 /*best effort call*/ 260 if (pbsdrmaa_job_update_status_accounting(self) == false) 261 self->on_missing( self ); 262 #else 257 263 self->on_missing( self ); 264 #endif 265 } 258 266 } 259 267 FINALLY
Note: See TracChangeset
for help on using the changeset viewer.