https://github.com/python/cpython/commit/a4625d597f9fc2d083fbb9c22d3ffcec73b2061a
commit: a4625d597f9fc2d083fbb9c22d3ffcec73b2061a
branch: main
author: Duane Griffin <dua...@dghda.com>
committer: vsajip <vinay_sa...@yahoo.co.uk>
date: 2025-06-26T15:18:32+01:00
summary:

gh-91555: add warning to docs about possibility of deadlock/infinite recursion 
(GH-135954)

* gh-91555: add warning to docs about possibility of deadlock/infinite recursion

Attempt to clarify in the documentation that care must be taken when using
multiprocessing classes to implement logging since they have builtin internal
logging, and hence may cause deadlock/infinite recursion.

* Update Doc/library/logging.handlers.rst

Co-authored-by: Vinay Sajip <vinay_sa...@yahoo.co.uk>

* Change whitespace.

---------

Co-authored-by: Vinay Sajip <vinay_sa...@yahoo.co.uk>

files:
M Doc/library/logging.handlers.rst

diff --git a/Doc/library/logging.handlers.rst b/Doc/library/logging.handlers.rst
index 8f3aa1dfdd0cde..d74ef73ee28497 100644
--- a/Doc/library/logging.handlers.rst
+++ b/Doc/library/logging.handlers.rst
@@ -1059,6 +1059,15 @@ possible, while any potentially slow operations (such as 
sending an email via
    .. note:: If you are using :mod:`multiprocessing`, you should avoid using
       :class:`~queue.SimpleQueue` and instead use 
:class:`multiprocessing.Queue`.
 
+   .. warning::
+
+      The :mod:`multiprocessing` module uses an internal logger created and
+      accessed via :meth:`~multiprocessing.get_logger`.
+      :class:`multiprocessing.Queue` will log ``DEBUG`` level messages upon
+      items being queued. If those log messages are processed by a
+      :class:`QueueHandler` using the same :class:`multiprocessing.Queue` 
instance,
+      it will cause a deadlock or infinite recursion.
+
    .. method:: emit(record)
 
       Enqueues the result of preparing the LogRecord. Should an exception

_______________________________________________
Python-checkins mailing list -- python-checkins@python.org
To unsubscribe send an email to python-checkins-le...@python.org
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: arch...@mail-archive.com

Reply via email to