Commit Graph

66 Commits

Author SHA1 Message Date
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
Jesse Noller 438195fc11 issue 4301: patch logging to add processName, remove the old _check_logger_class code 2009-01-18 21:04:36 +00:00
Jesse Noller 6ab22154dd Resolve issue 4449: AssertionError in mp_benchmarks.py 2009-01-18 02:45:38 +00:00
Jesse Noller 1f8b49f517 issue4238: bsd support for cpu_count 2008-11-28 18:59:35 +00:00
Georg Brandl 5ecd7452ec Fix typo. 2008-11-22 08:45:33 +00:00
Jesse Noller 37040cdace issue3770: if SEM_OPEN is 0, disable the mp.synchronize module, rev. Nick Coghlan, Damien Miller 2008-09-30 00:15:45 +00:00
Benjamin Peterson ffb3cca39b use the new threading properties for multiprocessing (reviewed by Jesse #3927) 2008-09-22 21:11:43 +00:00
Benjamin Peterson f7feaec16c revert r66114 for Jesse 2008-09-01 17:10:46 +00:00
Jesse Noller 27cc8e1dd2 Submit Nick's patch for issue 3589, reviewed by jnoller 2008-09-01 16:47:25 +00:00
Neal Norwitz 0c519b3a5e Fix problem reported by pychecker where AuthenticationError wasn't imported.
Add some test coverage to this code.  More tests should be added (TODO added).

R=Brett
TESTED=./python -E -tt ./Lib/test/regrtest.py test_multiprocessing
2008-08-25 01:50:24 +00:00
Jesse Noller 5bc9f4c09c issue3352: clean up the multiprocessing API to remove many get_/set_ methods and convert them to properties. Update the docs and the examples included. 2008-08-19 19:06:19 +00:00
Benjamin Peterson 82aa201022 patch up multiprocessing until it's API can be changed too 2008-08-18 18:31:58 +00:00
Benjamin Peterson a9b2222de4 change a few uses of the threading APIs 2008-08-18 18:01:43 +00:00