ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CRAB/python/DBinterface.py
(Generate patch)

Comparing COMP/CRAB/python/DBinterface.py (file contents):
Revision 1.34 by spiga, Mon Jun 9 14:40:31 2008 UTC vs.
Revision 1.42 by mcinquil, Wed Aug 20 16:40:10 2008 UTC

# Line 346 | Line 346 | class DBinterface:
346              for r in reportList:
347                  if r.getAttribute('id') in [ id, 'all']:
348                      rForJ = r
349 <                    break  
349 >                    break
350 >
351              # Data alignment
352 <            jobStatus = str(job.runningJob['statusScheduler'])
353 <            if rForJ.getAttribute('statusScheduler') not in ['Created', 'Submitting', 'Unknown'] and \
354 <                     job.runningJob['statusScheduler'] != 'Cleared':
352 >            if rForJ.getAttribute('status') not in ['Created', 'Unknown'] and not\
353 >                (job.runningJob['statusScheduler'] == 'Killing' and rForJ.getAttribute('status')!='Killed') \
354 >                and not  (job.runningJob['statusScheduler'] in 'Submitting'  and rForJ.getAttribute('status') in ['Killed','Cleared'])  :
355 >                   # update the status  
356 >                common.logger.debug(3,"Updating DB status for job: " + str(id) + " @: " \
357 >                                      + str(rForJ.getAttribute('status')) )
358                  job.runningJob['statusScheduler'] = str( rForJ.getAttribute('status') )
359 <                jobStatus = str(job.runningJob['statusScheduler'])
360 <                job.runningJob['status'] = str( rForJ.getAttribute('sched_status') )
361 <
362 <            job.runningJob['destination'] = str( rForJ.getAttribute('site') )
363 <            dest = str(job.runningJob['destination']).split(':')[0]
364 <
365 <            job.runningJob['applicationReturnCode'] = str( rForJ.getAttribute('exe_exit') )
366 <            exe_exit_code = str(job.runningJob['applicationReturnCode'])
367 <
368 <            job.runningJob['wrapperReturnCode'] = str( rForJ.getAttribute('job_exit') )
369 <            job_exit_code = str(job.runningJob['wrapperReturnCode'])
370 <
359 >                if (rForJ.getAttribute('status') == 'Done' or rForJ.getAttribute('status') == 'Done (Failed)')\
360 >                  and rForJ.getAttribute('sched_status') == 'E' :
361 >                    job.runningJob['status'] = 'SD'
362 >                else:
363 >                    job.runningJob['status'] = str( rForJ.getAttribute('sched_status') )
364 >          
365 >                job.runningJob['destination'] = str( rForJ.getAttribute('site') )
366 >                dest = str(job.runningJob['destination']).split(':')[0]
367 >              
368 >                job.runningJob['applicationReturnCode'] = str( rForJ.getAttribute('exe_exit') )
369 >                exe_exit_code = str(job.runningJob['applicationReturnCode'])
370 >              
371 >                job.runningJob['wrapperReturnCode'] = str( rForJ.getAttribute('job_exit') )
372 >                job_exit_code = str(job.runningJob['wrapperReturnCode'])
373 >          
374              #if str( rForJ.getAttribute('resubmit') ).isdigit():
375              #    job['submissionNumber'] = int(rForJ.getAttribute('resubmit'))
376              #    job.runningJob['submission'] =  int(rForJ.getAttribute('resubmit'))
377 <
377 >          
378              # TODO cleared='0' field, how should it be handled/mapped in BL? #Fabio
379  
380          common.bossSession.updateDB( task_new )

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines