Denis Ledoux
10cb3760e8
bpo-35017, socketserver: don't accept request after shutdown (GH-9952)
...
Prior to this revision, after the shutdown of a `BaseServer`,
the server accepted a last single request
if it was sent between the server socket polling
and the polling timeout.
This can be problematic for instance for a server restart
for which you do not want to interrupt the service,
by not closing the listening socket during the restart.
One request failed because of this behavior.
Note that only one request failed,
following requests were not accepted, as expected.
2018-10-26 15:46:17 +02:00
Victor Stinner
829fcd0612
bpo-33540: Fix socketserver.ThreadingMixIn if block_on_close=False (GH-7310)
...
socketserver.ThreadingMixIn no longer tracks active threads if
block_on_close is false.
2018-06-01 14:21:34 +02:00
Victor Stinner
453bd0bc65
bpo-33540: Add block_on_close attr to socketserver (GH-6911)
...
Add a new block_on_close class attribute to ForkingMixIn and
ThreadingMixIn classes of socketserver to opt-in for pre-3.7 behaviour.
2018-05-24 03:14:44 +02:00
Victor Stinner
b8f4163da3
bpo-31233: socketserver.ThreadingMixIn.server_close() ( #3523 )
...
socketserver.ThreadingMixIn now keeps a list of non-daemonic threads
to wait until all these threads complete in server_close().
Reenable test_logging skipped tests.
Fix SocketHandlerTest.tearDown(): close the socket handler before
stopping the server, so the server can join threads.
2017-09-13 01:47:22 -07:00
Antoine Pitrou
a6a4dc816d
bpo-31370: Remove support for threads-less builds ( #3385 )
...
* Remove Setup.config
* Always define WITH_THREAD for compatibility.
2017-09-07 18:56:24 +02:00
Victor Stinner
aa8ec34ad5
bpo-31151: Add socketserver.ForkingMixIn.server_close() ( #3057 )
...
* Add socketserver.ForkingMixIn.server_close()
bpo-31151: socketserver.ForkingMixIn.server_close() now waits until
all child processes completed to prevent leaking zombie processes.
* Fix test on Windows which doesn't have ForkingMixIn
2017-08-10 15:28:16 +02:00
Serhiy Storchaka
70d28a184c
Remove unused imports.
2016-12-16 20:00:15 +02:00
Martin Panter
34eeed4290
Issue #26721 : Change StreamRequestHandler.wfile to BufferedIOBase
2016-06-29 10:12:22 +00:00
Gregory P. Smith ext:(%20%5BGoogle%20Inc.%5D)
1bb8109fe3
Reindent properly.
2016-06-03 00:16:02 +00:00
Gregory P. Smith ext:(%20%5BGoogle%20Inc.%5D)
cef1f83c71
Issue #25931 : Don't defining socketserver.Forking* names on platforms such
...
as Windows that do not support os.fork().
2016-06-03 00:13:36 +00:00
Serhiy Storchaka
b6a9c9761c
Issue #26778 : Fixed "a/an/and" typos in code comment, documentation and error
...
messages.
2016-04-17 09:39:28 +03:00
Serhiy Storchaka
6a7b3a77b4
Issue #26778 : Fixed "a/an/and" typos in code comment and documentation.
2016-04-17 08:32:47 +03:00
Martin Panter
0cab9c1eba
Issue #26404 : Add context manager to socketserver, by Aviv Palivoda
2016-04-13 00:36:52 +00:00
Martin Panter
510addf63f
Issue #5824 : Merge socketserver tests from 3.5
2016-02-24 06:14:15 +00:00
Martin Panter
1827eff030
Issue #5824 : Fix DatagramRequestHandler tests by binding the client socket
2016-02-24 05:12:59 +00:00
Martin Panter
d9108d1253
Issue #23430 : Stop socketserver from catching SystemExit etc from handlers
...
Also make handle_error() consistently output to stderr, and fix the
documentation.
2016-02-21 08:49:56 +00:00
Martin Panter
c12fef9aa3
Issue #26309 : Shut down socketserver request if verify_request() is false
...
Patch by Aviv Palivoda.
2016-02-18 10:43:55 +00:00
Martin Panter
96a4f07107
Issues #26310 , #26311 : Fix typos in the documentation and code comments
2016-02-10 01:17:51 +00:00
Charles-François Natali
6e6c59b508
Issue #23285 : PEP 475 -- Retry system calls failing with EINTR.
2015-02-07 13:27:50 +00:00
Berker Peksag
50457403f2
Issue #23358 : Add missing BaseServer entry to socketserver.__all__.
...
Patch by Martin Panter.
2015-02-03 11:55:32 +02:00
Berker Peksag
3265344a85
Issue #23358 : Add missing BaseServer entry to socketserver.__all__.
...
Patch by Martin Panter.
2015-02-03 11:55:09 +02:00
Berker Peksag
1ed2e69a4a
Issue #22186 : Fix typos in Lib/.
...
Patch by Févry Thibault.
2014-10-19 18:07:05 +03:00
Charles-François Natali
acbf5235b8
Issue #22435 : Fix a file descriptor leak when SocketServer bind fails.
2014-10-13 19:28:50 +01:00
Charles-François Natali
0f4f048fa5
Issue #22435 : Fix a file descriptor leak when SocketServer bind fails.
2014-10-13 19:19:26 +01:00
Victor Stinner
ae58649721
Issue #22043 : time.monotonic() is now always available
...
threading.Lock.acquire(), threading.RLock.acquire() and socket operations now
use a monotonic clock, instead of the system clock, when a timeout is used.
2014-09-02 23:18:25 +02:00
Charles-François Natali
af4db37f2a
Issue #21491 : socketserver: Fix a race condition in child processes reaping.
2014-06-20 22:49:26 +01:00
Charles-François Natali
504f5c36ef
Issue #21491 : socketserver: Fix a race condition in child processes reaping.
2014-06-20 22:37:35 +01:00
Charles-François Natali
1d29cc5b6c
Issue #21040 : socketserver: Use the selectors module.
2014-03-24 22:25:39 +00:00
Victor Stinner
7fa767e517
Issue #20976 : pyflakes: Remove unused imports
2014-03-20 09:16:38 +01:00
Brett Cannon
cd171c8e92
Issue #18200 : Back out usage of ModuleNotFoundError (8d28d44f3a9a)
2013-07-04 17:43:24 -04:00
Brett Cannon
0a140668fa
Issue #18200 : Update the stdlib (except tests) to use
...
ModuleNotFoundError.
2013-06-13 20:57:26 -04:00
Kristján Valur Jónsson
cacb400345
Merge with 3.3
...
Issue #14574 : Ignore socket errors raised when flushing a connection on close.
2012-12-26 15:15:17 +00:00
Kristján Valur Jónsson
c8e7e2bb76
Merge with 3.2 :
...
Issue #14574 : Ignore socket errors raised when flushing a connection on close.
2012-12-26 15:13:29 +00:00
Kristján Valur Jónsson
36852b7844
Issue #14574 : Ignore socket errors raised when flushing a connection on close.
2012-12-25 22:46:32 +00:00
Andrew Svetlov
0832af6628
Issue #16717 : get rid of socket.error, replace with OSError
2012-12-18 23:10:48 +02:00
Andrew Svetlov
ad28c7f9da
Issue #16706 : get rid of os.error
2012-12-18 22:02:39 +02:00
R David Murray
258fabefde
#11109 : clean up docs, add whatsnew entry, and fix Justin's last name.
2012-10-01 21:43:46 -04:00
Antoine Pitrou
c0aa9eeb90
Fix the patch for issue #7978 : select() raises select.error before 3.3, not OSError.
2012-04-09 01:37:19 +02:00
Antoine Pitrou
c9e8e3c4dd
Issue #7978 : socketserver now restarts the select() call when EINTR is returned.
...
This avoids crashing the server loop when a signal is received.
Patch by Jerzy Kozera.
2012-04-09 00:49:17 +02:00
Antoine Pitrou
b0a9c66a49
Issue #7978 : socketserver now restarts the select() call when EINTR is returned.
...
This avoids crashing the server loop when a signal is received.
Patch by Jerzy Kozera.
2012-04-09 00:47:24 +02:00
Florent Xicluna
495dcbd5c1
Merge 3.2: issue #13140
2011-11-04 10:22:57 +01:00
Florent Xicluna
12b66b5217
Closes #13140 : Fix the daemon_threads attribute of ThreadingMixIn.
2011-11-04 10:16:28 +01:00
Ezio Melotti
f78869e47e
#13289 : fix typo.
2011-10-29 10:41:51 +03:00
Ezio Melotti
39be383406
#13289 : merge with 3.2.
2011-10-29 10:44:59 +03:00
Senthil Kumaran
5e826e8a1b
Fix closes issue #11109 - socketserver.ForkingMixIn leaves zombies, also fails to reap all zombies in one pass.
...
A new method called service_action is made available in BaseServer, called by
serve_forever loop. This useful in cases where Mixins can use it for cleanup
action. ForkingMixin class uses service_action to collect the zombie child
processes. Initial Patch by Justin Wark.
2011-05-26 00:22:59 +08:00
Benjamin Peterson
e6a06217d2
merge 3.1
2011-05-24 12:51:24 -05:00
Benjamin Peterson
f847393308
backout 8b384de4e780, so a proper fix can be considered ( #5715 )
2011-05-24 12:50:34 -05:00
Benjamin Peterson
48e21fc46f
merge 3.1
2011-05-24 12:09:26 -05:00
Benjamin Peterson
a7cdb0f218
generally, sockets should be closed after they're used
2011-05-24 12:06:31 -05:00
Charles-François Natali
cf057597e6
Issue #5715 : In socketserver, close the server socket in the child process.
2011-05-24 18:27:25 +02:00