[hg] galaxy 1582: Re-add JOB_ERROR since some finish hooks use i...

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[hg] galaxy 1582: Re-add JOB_ERROR since some finish hooks use i...

Nate Coraor (nate@bx.psu.edu)
details:   http://www.bx.psu.edu/hg/galaxy/rev/c9f19b8b21ba
changeset: 1582:c9f19b8b21ba
user:      Nate Coraor <[hidden email]>
date:      Wed Oct 29 12:35:50 2008 -0400
description:
Re-add JOB_ERROR since some finish hooks use it (albeit improperly).

2 file(s) affected in this change:

lib/galaxy/jobs/__init__.py
lib/galaxy/jobs/runners/pbs.py

diffs (33 lines):

diff -r 4841a9e393c7 -r c9f19b8b21ba lib/galaxy/jobs/__init__.py
--- a/lib/galaxy/jobs/__init__.py Tue Oct 28 14:31:02 2008 -0400
+++ b/lib/galaxy/jobs/__init__.py Wed Oct 29 12:35:50 2008 -0400
@@ -15,7 +15,7 @@
 log = logging.getLogger( __name__ )
 
 # States for running a job. These are NOT the same as data states
-JOB_WAIT, JOB_INPUT_ERROR, JOB_INPUT_DELETED, JOB_OK, JOB_READY, JOB_DELETED = 'wait', 'input_error', 'input_deleted', 'ok', 'ready', 'deleted'
+JOB_WAIT, JOB_ERROR, JOB_INPUT_ERROR, JOB_INPUT_DELETED, JOB_OK, JOB_READY, JOB_DELETED = 'wait', 'error', 'input_error', 'input_deleted', 'ok', 'ready', 'deleted'
 
 class Sleeper( object ):
     """
@@ -163,6 +163,8 @@
                 if job_state == JOB_WAIT:
                     if not self.track_jobs_in_database:
                         new_waiting.append( job )
+                elif job_state == JOB_ERROR:
+                    log.info( "job %d ended with an error" % job.job_id )
                 elif job_state == JOB_INPUT_ERROR:
                     log.info( "job %d unable to run: one or more inputs in error state" % job.job_id )
                 elif job_state == JOB_INPUT_DELETED:
diff -r 4841a9e393c7 -r c9f19b8b21ba lib/galaxy/jobs/runners/pbs.py
--- a/lib/galaxy/jobs/runners/pbs.py Tue Oct 28 14:31:02 2008 -0400
+++ b/lib/galaxy/jobs/runners/pbs.py Wed Oct 29 12:35:50 2008 -0400
@@ -358,7 +358,7 @@
             pbs_job_state.job_wrapper.finish( stdout, stderr )
         except:
             log.exception("Job wrapper finish method failed")
-            job_wrapper.fail("Unable to finish job", exception=True)
+            pbs_job_state.job_wrapper.fail("Unable to finish job", exception=True)
 
         # clean up the pbs files
         self.cleanup( ( ofile, efile, job_file ) )