Skip to content

Commit 7661103

Browse files
miss-islingtonsobolevn
authored andcommitted
bpo-45128: fixes test_multiprocessing_fork mysterious crash (GH-28387)
(cherry picked from commit 1d42408) Co-authored-by: Nikita Sobolev <[email protected]>
1 parent f025ea2 commit 7661103

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
@@ -4421,8 +4421,10 @@ def _extract_logrecord_process_name(key, logMultiprocessing, conn=None):
44214421
name = mp.current_process().name
44224422

44234423
r1 = logging.makeLogRecord({'msg': f'msg1_{key}'})
4424-
del sys.modules['multiprocessing']
4425-
r2 = logging.makeLogRecord({'msg': f'msg2_{key}'})
4424+
4425+
# https://bugs.python.org/issue45128
4426+
with support.swap_item(sys.modules, 'multiprocessing', None):
4427+
r2 = logging.makeLogRecord({'msg': f'msg2_{key}'})
44264428

44274429
results = {'processName' : name,
44284430
'r1.processName': r1.processName,
@@ -4471,7 +4473,6 @@ def test_multiprocessing(self):
44714473
if multiprocessing_imported:
44724474
import multiprocessing
44734475

4474-
44754476
def test_optional(self):
44764477
r = logging.makeLogRecord({})
44774478
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)