Skip to content

gh-149879: Fix multiprocessing resource tracker tests on Cygwin - #150440

Merged
vstinner merged 1 commit into
python:mainfrom
vstinner:mp_sigterm
May 26, 2026
Merged

gh-149879: Fix multiprocessing resource tracker tests on Cygwin#150440
vstinner merged 1 commit into
python:mainfrom
vstinner:mp_sigterm

Conversation

@vstinner

@vstinnervstinner commented May 26, 2026

Copy link
Copy Markdown
Member

Skip test_resource_tracker_sigterm() if signal.pthread_sigmask() is missing.

Skip test_resource_tracker_sigterm() if signal.pthread_sigmask() is
missing.
@vstinner
vstinner requested a review from gpshead as a code ownerMay 26, 2026 00:44
@bedevere-appbedevere-appBot added tests Tests in the Lib/test dir awaiting core review labels May 26, 2026
@bedevere-appbedevere-appBot mentioned this pull request May 26, 2026
@vstinner

Copy link
Copy Markdown
MemberAuthor

The test fails also on Linux if signal.pthread_sigmask() is missing. Apply the patch:

diff --git a/Lib/multiprocessing/resource_tracker.py b/Lib/multiprocessing/resource_tracker.py
index d3328a8c617..a2cfcb550a8 100644
--- a/Lib/multiprocessing/resource_tracker.py+++ b/Lib/multiprocessing/resource_tracker.py@@ -31,7 +31,7 @@
__all__ = ['ensure_running', 'register', 'unregister']
-_HAVE_SIGMASK = hasattr(signal, 'pthread_sigmask')+_HAVE_SIGMASK = False
_IGNORED_SIGNALS = (signal.SIGINT, signal.SIGTERM)
def cleanup_noop(name):

Run the test:

$ ./python -m test test_multiprocessing_spawn.test_misc -m test_resource_tracker_sigterm -v
...
Traceback (most recent call last):
File "/home/vstinner/python/main/Lib/multiprocessing/resource_tracker.py", line 453, in main
cache[rtype].remove(name)
~~~~~~~~~~~~~~~~~~~^^^^^^
KeyError: '/mp-1zhvb0mv'
======================================================================
FAIL: test_resource_tracker_sigterm (test.test_multiprocessing_spawn.test_misc.TestResourceTracker.test_resource_tracker_sigterm)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/home/vstinner/python/main/Lib/test/_test_multiprocessing.py", line 6315, in test_resource_tracker_sigterm
self.check_resource_tracker_death(signal.SIGTERM, False)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
File "/home/vstinner/python/main/Lib/test/_test_multiprocessing.py", line 6307, in check_resource_tracker_death
self.assertEqual(len(all_warn), 0)
~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
AssertionError: 1 != 0
...

@vstinner
vstinner merged commit bc67dad into python:mainMay 26, 2026
95 of 97 checks passed
@vstinner
vstinner deleted the mp_sigterm branch May 26, 2026 02:23
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip newstestsTests in the Lib/test dir

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@vstinner