Skip to content

Commit 8aad8da

Browse files
timsaucerclaude
andcommitted
docs(distributing): narrow Python 3.14 start-method note to Linux
The previous wording said Python 3.14 changed the "POSIX default" from fork to forkserver, but macOS (also POSIX) has defaulted to `spawn` since Python 3.8 — only Linux was using `fork` as default, and only Linux flipped to `forkserver` in 3.14. Windows has always been `spawn`. Replace "POSIX" with "Linux" and add a parenthetical naming the defaults on the other platforms so readers don't infer the wrong platform coverage from the change note. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 1343057 commit 8aad8da

1 file changed

Lines changed: 7 additions & 6 deletions

File tree

docs/source/user-guide/io/distributing_work.rst

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -238,12 +238,13 @@ context to resolve.
238238
Python 3.14 default change
239239
~~~~~~~~~~~~~~~~~~~~~~~~~~
240240

241-
Python 3.14 changed the POSIX default start method for
242-
:py:mod:`multiprocessing` from ``fork`` to ``forkserver``. With
243-
``fork``, any state set in the parent was visible in workers via
244-
copy-on-write; with ``forkserver`` and ``spawn`` it is not. The
245-
:py:func:`~datafusion.ipc.set_worker_ctx` pattern works on every
246-
start method — prefer it over relying on inherited state.
241+
Python 3.14 changed the Linux default start method for
242+
:py:mod:`multiprocessing` from ``fork`` to ``forkserver`` (macOS has
243+
defaulted to ``spawn`` since Python 3.8; Windows has always used
244+
``spawn``). With ``fork``, any state set in the parent was visible in
245+
workers via copy-on-write; with ``forkserver`` and ``spawn`` it is
246+
not. The :py:func:`~datafusion.ipc.set_worker_ctx` pattern works on
247+
every start method — prefer it over relying on inherited state.
247248

248249
Practical considerations
249250
~~~~~~~~~~~~~~~~~~~~~~~~

0 commit comments

Comments
 (0)