yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #94359
[Bug 2073743] Re: ``ProcessMonitor._check_child_processes`` cannot release the GIL inside a locked method
Reviewed: https://review.opendev.org/c/openstack/neutron/+/924581
Committed: https://opendev.org/openstack/neutron/commit/baa57ab38d754bfa2dba488feb9429c1380d616c
Submitter: "Zuul (22348)"
Branch: master
commit baa57ab38d754bfa2dba488feb9429c1380d616c
Author: Rodolfo Alonso Hernandez <ralonsoh@xxxxxxxxxx>
Date: Fri Jul 19 18:03:16 2024 +0000
Do not release the executor inside ``_check_child_processes``
The method ``ProcessMonitor._check_child_processes`` was releasing
the thread executor inside a method that creates a lock for the resource
"_check_child_processes". Despite this resource is not used anywhere
else (at least for this instance), this could lead to a potential
deadlock.
The current implementation of ``lockutils.synchronized`` with the
default value "external=False" and "fair=False" is a
``threading.Lock()`` instance. The goal of this lock is, precisely, to
execute the code inside the locked code without any interruption and
then to be able to release the executor.
Closes-Bug: #2073743
Change-Id: I44c7a4ce81a67b86054832ac050cf5b465727adf
** Changed in: neutron
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/2073743
Title:
``ProcessMonitor._check_child_processes`` cannot release the GIL
inside a locked method
Status in neutron:
Fix Released
Bug description:
The method ``ProcessMonitor._check_child_processes`` releases the
thread executor inside a method that creates a lock for the resource
"_check_child_processes". Despite this resource is not used anywhere
else (at least for this instance), this could lead to a potential
deadlock.
The current implementation of ``lockutils.synchronized`` with the
default value "external=False" and "fair=False" is a
``threading.Lock()`` instance. The goal of this lock is, precisely, to
execute the code inside the locked code without any interruption and
then to be able to release the executor.
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/2073743/+subscriptions
References