From 9ff9b33208ebffbb5be7fbe0a684b981f16e0533 Mon Sep 17 00:00:00 2001 From: Peter Amstutz Date: Mon, 11 Sep 2023 21:49:55 -0400 Subject: [PATCH] 20825: Make SeparateRunner reusable Arvados-DCO-1.1-Signed-off-by: Peter Amstutz --- sdk/cwl/arvados_cwl/arvcontainer.py | 2 +- sdk/cwl/arvados_cwl/arvworkflow.py | 3 ++- sdk/cwl/arvados_cwl/runner.py | 4 +++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/sdk/cwl/arvados_cwl/arvcontainer.py b/sdk/cwl/arvados_cwl/arvcontainer.py index 487ab70909..aa9fa1e903 100644 --- a/sdk/cwl/arvados_cwl/arvcontainer.py +++ b/sdk/cwl/arvados_cwl/arvcontainer.py @@ -587,7 +587,7 @@ class RunnerContainer(Runner): "ram": 1024*1024 * (math.ceil(self.submit_runner_ram) + math.ceil(self.collection_cache_size)), "API": True }, - "use_existing": False, # Never reuse the runner container - see #15497. + "use_existing": self.reuse_runner, "properties": {} } diff --git a/sdk/cwl/arvados_cwl/arvworkflow.py b/sdk/cwl/arvados_cwl/arvworkflow.py index 6144f6f2f1..424bb27492 100644 --- a/sdk/cwl/arvados_cwl/arvworkflow.py +++ b/sdk/cwl/arvados_cwl/arvworkflow.py @@ -787,7 +787,8 @@ class ArvadosWorkflow(Workflow): secret_store=self.arvrunner.secret_store, collection_cache_size=runtimeContext.collection_cache_size, collection_cache_is_default=self.arvrunner.should_estimate_cache_size, - git_info=runtimeContext.git_info).job(joborder, output_callback, runtimeContext) + git_info=runtimeContext.git_info, + reuse_runner=True).job(joborder, output_callback, runtimeContext) def job(self, joborder, output_callback, runtimeContext): diff --git a/sdk/cwl/arvados_cwl/runner.py b/sdk/cwl/arvados_cwl/runner.py index 4432813f6a..763d9d7e12 100644 --- a/sdk/cwl/arvados_cwl/runner.py +++ b/sdk/cwl/arvados_cwl/runner.py @@ -828,7 +828,8 @@ class Runner(Process): priority=None, secret_store=None, collection_cache_size=256, collection_cache_is_default=True, - git_info=None): + git_info=None, + reuse_runner=False): self.loadingContext = loadingContext.copy() @@ -861,6 +862,7 @@ class Runner(Process): self.enable_dev = self.loadingContext.enable_dev self.git_info = git_info self.fast_parser = self.loadingContext.fast_parser + self.reuse_runner = reuse_runner self.submit_runner_cores = 1 self.submit_runner_ram = 1024 # defaut 1 GiB -- 2.30.2