Skip to content

Commit 1d42408

Browse files
authored
bpo-45128: fixes test_multiprocessing_fork mysterious crash (GH-28387)
1 parent e6d05a4 commit 1d42408

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

Lib/test/test_logging.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4437,8 +4437,10 @@ def _extract_logrecord_process_name(key, logMultiprocessing, conn=None):
44374437
name = mp.current_process().name
44384438

44394439
r1 = logging.makeLogRecord({'msg': f'msg1_{key}'})
4440-
del sys.modules['multiprocessing']
4441-
r2 = logging.makeLogRecord({'msg': f'msg2_{key}'})
4440+
4441+
# https://bugs.python.org/issue45128
4442+
with support.swap_item(sys.modules, 'multiprocessing', None):
4443+
r2 = logging.makeLogRecord({'msg': f'msg2_{key}'})
44424444

44434445
results = {'processName' : name,
44444446
'r1.processName': r1.processName,
@@ -4487,7 +4489,6 @@ def test_multiprocessing(self):
44874489
if multiprocessing_imported:
44884490
import multiprocessing
44894491

4490-
44914492
def test_optional(self):
44924493
r = logging.makeLogRecord({})
44934494
NOT_NONE = self.assertIsNotNone
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Fix ``test_multiprocessing_fork`` failure due to ``test_logging`` and
2+
``sys.modules`` manipulation.

0 commit comments

Comments
 (0)