From eaa06ee52804614d3c395753a4bbb7ab9794546f Mon Sep 17 00:00:00 2001 From: Sebastian Serth Date: Sun, 31 Oct 2021 01:03:07 +0200 Subject: [PATCH] DCP: Prevent double deletion of runner --- lib/runner/connection.rb | 2 ++ lib/runner/strategy/docker_container_pool.rb | 1 - 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/runner/connection.rb b/lib/runner/connection.rb index 87f59aac..6f6b12bc 100644 --- a/lib/runner/connection.rb +++ b/lib/runner/connection.rb @@ -135,6 +135,8 @@ class Runner::Connection case @status when :timeout + # The runner will destroyed. For the DockerContainerPool, this mechanism is necessary. + # However, it might not be required for Poseidon. @strategy.destroy_at_management @error = Runner::Error::ExecutionTimeout.new('Execution exceeded its time limit') when :terminated_by_codeocean, :terminated_by_management diff --git a/lib/runner/strategy/docker_container_pool.rb b/lib/runner/strategy/docker_container_pool.rb index 2900a99f..d4e6e422 100644 --- a/lib/runner/strategy/docker_container_pool.rb +++ b/lib/runner/strategy/docker_container_pool.rb @@ -90,7 +90,6 @@ class Runner::Strategy::DockerContainerPool < Runner::Strategy end rescue Timeout::Error socket.close(:timeout) - destroy_at_management end socket end