From 737b99388f1e5eadbbe3a719d4b5c481f92ff90e Mon Sep 17 00:00:00 2001 From: Mainak Kundu Date: Fri, 14 Nov 2025 16:17:14 -0500 Subject: [PATCH 1/4] fix: Fix the slurm-launcher hang by closing stdout after reading --- src/ansys/fluent/core/launcher/slurm_launcher.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/ansys/fluent/core/launcher/slurm_launcher.py b/src/ansys/fluent/core/launcher/slurm_launcher.py index 08a7683a8cf..7b79c8ee231 100644 --- a/src/ansys/fluent/core/launcher/slurm_launcher.py +++ b/src/ansys/fluent/core/launcher/slurm_launcher.py @@ -93,6 +93,7 @@ from ansys.fluent.core.session_solver import Solver from ansys.fluent.core.session_solver_icing import SolverIcing from ansys.fluent.core.utils.fluent_version import FluentVersion +from ansys.fluent.core import config logger = logging.getLogger("pyfluent.launcher") @@ -102,6 +103,10 @@ def _get_slurm_job_id(proc: subprocess.Popen): for line in proc.stdout: if line.startswith(prefix.encode()): line = line.decode().removeprefix(prefix).strip() + # if the proc.stdout is configured to None, close it after reading the slurm job id + # to avoid hang in some systems + if config.launch_fluent_stdout is None: + proc.stdout.close() return int(line) From 901d5fd42d70efade2bddb5bed7be37964bd1a12 Mon Sep 17 00:00:00 2001 From: pyansys-ci-bot <92810346+pyansys-ci-bot@users.noreply.github.com> Date: Fri, 14 Nov 2025 21:20:21 +0000 Subject: [PATCH 2/4] chore: adding changelog file 4611.fixed.md [dependabot-skip] --- doc/changelog.d/4611.fixed.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 doc/changelog.d/4611.fixed.md diff --git a/doc/changelog.d/4611.fixed.md b/doc/changelog.d/4611.fixed.md new file mode 100644 index 00000000000..0bcd606c110 --- /dev/null +++ b/doc/changelog.d/4611.fixed.md @@ -0,0 +1 @@ +Fix the slurm-launcher hang by closing stdout after reading From f597a0118edf4ecd32acf3443094d7eb190ae980 Mon Sep 17 00:00:00 2001 From: Mainak Kundu Date: Fri, 14 Nov 2025 16:24:53 -0500 Subject: [PATCH 3/4] fix: PR suggestions --- src/ansys/fluent/core/launcher/slurm_launcher.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ansys/fluent/core/launcher/slurm_launcher.py b/src/ansys/fluent/core/launcher/slurm_launcher.py index 7b79c8ee231..1a1e2e2de90 100644 --- a/src/ansys/fluent/core/launcher/slurm_launcher.py +++ b/src/ansys/fluent/core/launcher/slurm_launcher.py @@ -103,9 +103,9 @@ def _get_slurm_job_id(proc: subprocess.Popen): for line in proc.stdout: if line.startswith(prefix.encode()): line = line.decode().removeprefix(prefix).strip() - # if the proc.stdout is configured to None, close it after reading the slurm job id - # to avoid hang in some systems - if config.launch_fluent_stdout is None: + # if the configuration setting 'launch_fluent_stdout' is None, + # close proc.stdout after reading the slurm job id to avoid hang in some systems + if config.launch_fluent_stdout is None and proc.stdout is not None: proc.stdout.close() return int(line) From 1006c483ec70ed8c50bb0e6efbaa9f688d3eab53 Mon Sep 17 00:00:00 2001 From: Mainak Kundu Date: Fri, 14 Nov 2025 16:33:21 -0500 Subject: [PATCH 4/4] fix: code style --- src/ansys/fluent/core/launcher/slurm_launcher.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ansys/fluent/core/launcher/slurm_launcher.py b/src/ansys/fluent/core/launcher/slurm_launcher.py index 1a1e2e2de90..d0c72b854a7 100644 --- a/src/ansys/fluent/core/launcher/slurm_launcher.py +++ b/src/ansys/fluent/core/launcher/slurm_launcher.py @@ -70,6 +70,7 @@ import time from typing import Any, Callable, Dict +from ansys.fluent.core import config from ansys.fluent.core._types import PathType from ansys.fluent.core.exceptions import InvalidArgument from ansys.fluent.core.launcher.launch_options import ( @@ -93,7 +94,6 @@ from ansys.fluent.core.session_solver import Solver from ansys.fluent.core.session_solver_icing import SolverIcing from ansys.fluent.core.utils.fluent_version import FluentVersion -from ansys.fluent.core import config logger = logging.getLogger("pyfluent.launcher")