Commit graph

73 commits

Author SHA1 Message Date
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
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