Commit Graph

78 Commits

Author SHA1 Message Date
Richard Oudkerk ba48264bce Issue #17018: Make Process.join() retry if os.waitpid() fails with EINTR. 2013-02-26 12:37:07 +00:00
Benjamin Peterson eff492f4b7 Issue #15881: Fixed atexit hook in multiprocessing. 2013-02-02 11:15:50 -05:00
Richard Oudkerk 7796b08664 Issue #10527: Remove dead code 2013-01-15 13:13:35 +00:00
Giampaolo Rodola' 049a378cd7 issue 10527: fix missing import 2013-01-03 02:53:28 +01:00
Giampaolo Rodola' cef2006eaf Fix issue 10527: make multiprocessing use poll() instead of select() if available. 2012-12-31 17:23:09 +01:00
Richard Oudkerk faee75c33a Issue #15646: Prevent equivalent of a fork bomb when using multiprocessing
on Windows without the "if __name__ == '__main__'" idiom.
2012-08-14 11:41:19 +01:00
Richard Oudkerk e4b9938d77 Issue #6056: Make multiprocessing use setblocking(True) on the sockets it uses.
Original patch by J Derek Wilson.
2012-07-27 14:05:46 +01:00
Richard Oudkerk 4215d2738a Issue #15101: Make pool finalizer avoid joining current thread 2012-06-18 15:37:31 +01:00
Richard Oudkerk 2182e0578c Issue #13854: Properly handle non-integer, non-string arg to SystemExit
Previously multiprocessing only expected int or str.  It also wrongly
used an exit code of 1 when the argument was a string instead of zero.
2012-06-06 19:01:14 +01:00
Richard Oudkerk d44a4a27a6 Issue #12157: pool.map() does not handle empty iterable correctly
Initial patch by mouad
2012-06-06 17:52:18 +01:00
Richard Oudkerk 6a942528ec Issue #14881: Allow normal non-main thread to spawn a dummy process
Fix suggested by Itay Brandes
2012-05-25 12:56:33 +01:00
Richard Oudkerk 9a16fa69dd Fix for issue 14725 for 2.7 branch 2012-05-05 20:41:08 +01:00
Richard Oudkerk 0c200c282b Issue #9400: Partial backport of fix for #9244
In multiprocessing, a pool worker process would die
if the result/error could not be pickled.  This could
cause pool methods to hang.

In 3.x this was fixed by 0aa8af79359d (which also added
an error_callback argument to some methods), but the fix
was not back ported.
2012-05-02 16:36:26 +01:00
Charles-François Natali 709aa35a7a Issue #8184: Fix a potential file descriptor leak when a
multiprocessing.Connection socket can't be bound.
2012-02-04 14:40:25 +01:00
Charles-François Natali b40827d379 Issue #13565: Increase multiprocessing's server socket backlog, to avoid
dropped connections in case of simultaneous connection requests.
2011-12-23 19:05:45 +01:00
Antoine Pitrou 6a570d6b9a Issue #13373: multiprocessing.Queue.get() could sometimes block indefinitely
when called with a timeout.  Patch by Arnaud Ysmal.
2011-11-10 00:33:50 +01:00
Charles-François Natali 46f990e58c Issue #10332: multiprocessing: fix a race condition when a Pool is closed
before all tasks have completed.
2011-10-24 18:43:51 +02:00
Ezio Melotti 1e87da16ea Remove duplication. 2011-10-19 10:39:35 +03:00
Antoine Pitrou 77657e40fa Issue #4106: Fix occasional exceptions printed out by multiprocessing on interpreter shutdown.
This bug doesn't seem to exist on 3.2, where daemon threads are killed
before Py_Finalize() is entered.
2011-08-24 22:41:05 +02:00
Charles-François Natali 414d0faedc Issue #12352: Fix a deadlock in multiprocessing.Heap when a block is freed by
the garbage collector while the Heap lock is held.
2011-07-02 13:56:19 +02:00
Victor Stinner f64a0cffca Issue #12285: multiprocessing.Pool() raises a ValueError if the number of
processes if negative or null.
2011-06-20 17:54:33 +02:00
brian.curtin 40b5316118 Fix #5162. Allow child spawning from Windows services (via pywin32). 2011-04-11 18:00:59 -05:00
Antoine Pitrou 7dfc874a48 Issue #8428: Fix a race condition in multiprocessing.Pool when terminating
worker processes: new processes would be spawned while the pool is being
shut down.  Patch by Charles-François Natali.
2011-04-11 00:26:42 +02:00
Mark Dickinson d3cb2f6e2c Issue #11675: Zero-out newly-created multiprocessing.[Raw]Array objects. 2011-03-26 10:02:37 +00:00
Mark Dickinson f9e9a6f403 Issue #11673: Fix multiprocessing.[Raw]Array constructor to accept a size of type long. Thanks Robert Kern. 2011-03-25 22:01:06 +00:00
Ronald Oussoren 2ab5994dbe Issue #11569: use absolute path to the sysctl command in multiprocessing to
ensure that it will be found regardless of the shell PATH. This ensures
that multiprocessing.cpu_count works on default installs of MacOSX.

Patch by Steffen Daode Nurpmeso.
2011-03-16 09:47:15 -04:00
R. David Murray 79af245fb2 Merged revisions 87225 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r87225 | r.david.murray | 2010-12-13 20:38:16 -0500 (Mon, 13 Dec 2010) | 2 lines

  9162: fix license in multiprocessing files
........
2010-12-14 01:42:40 +00:00
Brian Curtin 87d86e09b5 Merged revisions 86077 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r86077 | brian.curtin | 2010-11-01 00:10:44 -0500 (Mon, 01 Nov 2010) | 3 lines

  Fix some ResourceErrors.
  Use a context manager for os.popen and explicitly close a socket.
........
2010-11-01 05:15:55 +00:00
Jesse Noller 2f8c8f47c7 Submit patch for bug 9144; broken imports due to r81380 2010-07-03 12:26:02 +00:00
Florent Xicluna d034b32f57 On finalize, don't try to join not started process. 2010-03-08 11:01:39 +00:00
Florent Xicluna 52584779a6 Don't fail on a debug() statement, if the worker PID is (still) None. 2010-03-08 07:21:16 +00:00
Florent Xicluna 16cd888dd9 Backport the Popen.poll() protection from subprocess to multiprocessing. See #1731717.
It should fix transient failures on test_multiprocessing.
2010-03-07 23:49:03 +00:00
Florent Xicluna 3bc5cb7e0d #7805: wait until all workers are started before collecting their PIDs 2010-03-04 15:58:54 +00:00
Jesse Noller 654ade3e6a Issue #6963: Added maxtasksperchild argument to multiprocessing.Pool 2010-01-27 03:05:57 +00:00
Benjamin Peterson 27cae34bd0 allow Process name to be unicode #7571 2009-12-24 15:19:40 +00:00
Jesse Noller 7bdd8d946b revert unintended change to multiprocessing/queues.py 2009-11-21 14:06:24 +00:00
Jesse Noller 6c3767445c issue5738: The distribution example was confusing, and out of date. It's too large to include inline in the docs as well. It belongs in an addons module outside the stdlib. Removing. 2009-11-21 14:01:56 +00:00
Antoine Pitrou c562ca4625 Issue #7318: multiprocessing now uses a timeout when it fails to establish
a connection with another process, rather than looping endlessly. The
default timeout is 20 seconds, which should be amply sufficient for
local connections.
2009-11-13 22:31:18 +00:00
Georg Brandl c40e60e5e5 #6938: "ident" is always a string, so use a format code which works. 2009-09-18 09:18:27 +00:00
Jesse Noller 8497efeb40 Fix issue 4660: spurious task_done errors in multiprocessing, remove doc note for from_address 2009-08-06 02:05:56 +00:00
Jesse Noller 7530e47948 Issue 6433: multiprocessing.pool.map hangs on empty list 2009-07-16 14:23:04 +00:00
Jesse Noller 1b90efbdc5 Resolves issues 5155, 5313, 5331 - bad file descriptor error with processes in processes 2009-06-30 17:11:52 +00:00
Georg Brandl 0c6d166479 Typo fix. 2009-06-08 18:41:36 +00:00
Benjamin Peterson eb88cb8cd4 __enter__ and __exit__ must be on the class 2009-05-31 15:00:27 +00:00
Jesse Noller 7152f6d915 Add custom initializer argument to multiprocess.Manager*, courtesy of lekma 2009-04-02 05:17:26 +00:00
Jesse Noller 02cb0eb231 Fix multiprocessing.event to match the new threading.Event API 2009-04-01 03:45:50 +00:00
Jesse Noller b2898e0acb add JoinableQueue to __all__ 2009-03-31 03:31:16 +00:00
Jesse Noller 459a648166 Issue 5177: use socket.SO_REUSEADDR on multiprocessing SocketManager sockets 2009-03-30 15:50:42 +00:00
Jesse Noller b5a4b0abed Properly document multiprocessing's logging support, resolve outstanding issues with the custom levels 2009-01-25 03:36:13 +00:00
Jesse Noller 7314b38168 Issue 5009: multiprocessing: failure in manager._debug_info() 2009-01-21 02:08:17 +00:00