cgat-developers / ruffus

CGAT-ruffus is a lightweight python module for running computational pipelines
MIT License
173 stars 34 forks source link

Exception handling in task.py #71

Open kemaleren opened 8 years ago

kemaleren commented 8 years ago

I modified drmaa_wrapper.run_job_using_drmaa() to terminate running jobs when the pipeline gets interrupted:

https://github.com/kemaleren/ruffus/commit/c41181a445be57dd77bb949495861bf9c075c63f

However, the finally block never gets called. It appears that task.pipeline_run() and/or other code in task.py are not handling exceptions correctly, and therefore the ThreadPool workers are not getting gracefully shut down.

I've attached the errors I get when interrupting a run with Ctrl-C: ruffus-stderr.txt