Project

General

Profile

Bug #25593

Dynflow executor termination may hang if there is an action which keeps the executor occupied

Added by Ivan Necas almost 2 years ago. Updated almost 2 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
Dynflow
Target version:
-
Difficulty:
Triaged:
No
Bugzilla link:

Description

Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=1654975

Description of problem:
If there is an action which is running on an executor for a long time and it does not suspend itself and the memory watcher decides to recycle the executor, the termination may hang indefinitely.

Version-Release number of selected component (if applicable):

How reproducible:
always

Steps to Reproduce:
1. Pick any action, add infinite sleep to the beginning of its run method
2. Trigger the action
3. Wait for the memory watcher to try restarting the executor

Actual results:
The termination hangs, the dynflow executor process stays there, not releasing its resources.

Expected results:
The dynflow executor process gets terminated

Additional info:


Related issues

Blocks foreman-tasks - Bug #25021: The termination procedure after memory threshold exceeded can get stuck, waiting infinitely for some events to occurClosed

History

#1 Updated by Ivan Necas almost 2 years ago

  • Status changed from New to Closed
  • Category set to Dynflow
  • Subject changed from Dynflow executor termination may hang if there is an action which keeps the executor occupied to Dynflow executor termination may hang if there is an action which keeps the executor occupied
  • Pull request https://github.com/Dynflow/dynflow/pull/301 added

#2 Updated by Ivan Necas almost 2 years ago

  • Blocks Bug #25021: The termination procedure after memory threshold exceeded can get stuck, waiting infinitely for some events to occur added

#3 Updated by Adam Ruzicka almost 2 years ago

  • Fixed in Releases dynflow-1.1.4 added

#4 Updated by Ivan Necas almost 2 years ago

  • Status changed from Closed to Assigned
  • Fixed in Releases deleted (dynflow-1.1.4)
  • Pull request https://github.com/Dynflow/dynflow/pull/312 added

Added additional PR to enhance the patch checking for state of the concurrent ruby executor

#5 Updated by Ivan Necas almost 2 years ago

  • Status changed from Assigned to Closed

#6 Updated by Ivan Necas almost 2 years ago

  • Fixed in Releases dynflow-1.1.6 (Foreman 1.20) added

Also available in: Atom PDF