diff --git a/reana_workflow_controller/workflow_run_manager.py b/reana_workflow_controller/workflow_run_manager.py index db7d6d06..a56e2278 100644 --- a/reana_workflow_controller/workflow_run_manager.py +++ b/reana_workflow_controller/workflow_run_manager.py @@ -29,7 +29,7 @@ create_cvmfs_storage_class, format_cmd) from reana_db.config import SQLALCHEMY_DATABASE_URI from reana_db.database import Session -from reana_db.models import Job +from reana_db.models import Job, JobStatus from reana_workflow_controller.errors import (REANAInteractiveSessionError, REANAWorkflowControllerError) @@ -221,9 +221,9 @@ def _workflow_engine_env_vars(self): def get_workflow_running_jobs_as_backend_ids(self): """Get all running jobs of a workflow as backend job IDs.""" session = Session.object_session(self.workflow) - job_list = self.workflow.job_progress.get( - 'running', {}).get('job_ids', []) - rows = session.query(Job).filter(Job.id_.in_(job_list)) + rows = session.query(Job).filter_by( + workflow_uuid=str(self.workflow.id_), + status=JobStatus.running) backend_ids = [j.backend_job_id for j in rows.all()] return backend_ids