classification
Title: HTTPServer can't deal with persistent connection properly
Type: behavior Stage: resolved
Components: Library (Lib) Versions: Python 2.7
process
Status: closed Resolution: duplicate
Dependencies: Superseder: http.server and SimpleHTTPServer hang after a few requests
View: 31639
Assigned To: Nosy List: martin.panter, r.david.murray, 杨鹏
Priority: normal Keywords:

Created on 2018-01-08 08:09 by 杨鹏, last changed 2018-01-09 13:36 by r.david.murray. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 5135 closed 杨鹏, 2018-01-08 08:09
Messages (6)
msg309659 - (view) Author: 杨鹏 (杨鹏) * Date: 2018-01-08 08:09
when client is using persistent connection, HTTPServer will hang with that connection. As a result, it can't deal with other clients.
msg309660 - (view) Author: Martin Panter (martin.panter) * (Python committer) Date: 2018-01-08 10:49
Perhaps this can be treated as a duplicate of Issue 31639.
msg309664 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2018-01-08 12:59
Yes, I would say it is.

Note that this isn't going to get "fixed" in 2.7, because 2.7 doesn't get new features, and the proposed change to the CLI is a new feature.  As noted in that issue discussion we aren't going to change the inheritance hierarchy of the classes.  It is up to the library user to make that choice and implement it.
msg309683 - (view) Author: 杨鹏 (杨鹏) * Date: 2018-01-09 02:41
OK,i got it. thanks for your reply. But i have to say, the BaseHTTPServer document is kind of confusing. It claims to support persistent connection, but actually it hangs with such situation, i can't even shut it down with shudown() method. After diving into source code of SocketServer, i finally found the myth.
msg309696 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2018-01-09 13:34
Well, it does support a persistent connection, but that connection lasts until it is shut down from the other side.  Documentation improvement suggestions are welcome.
msg309697 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2018-01-09 13:36
In particular, if we don't already have an example of using the threading mixin we should, so a doc RFE to add that would be nice.
History
Date User Action Args
2018-01-09 13:36:07r.david.murraysetmessages: + msg309697
2018-01-09 13:34:40r.david.murraysetmessages: + msg309696
2018-01-09 02:41:54杨鹏setmessages: + msg309683
2018-01-08 20:31:02martin.pantersetsuperseder: HTTPServer can't deal with persistent connection properly -> http.server and SimpleHTTPServer hang after a few requests
2018-01-08 20:31:02martin.panterunlinkissue32518 superseder
2018-01-08 12:59:32r.david.murraysetstatus: open -> closed

superseder: HTTPServer can't deal with persistent connection properly

nosy: + r.david.murray
messages: + msg309664
resolution: duplicate
stage: resolved
2018-01-08 12:59:32r.david.murraylinkissue32518 superseder
2018-01-08 10:49:35martin.pantersetnosy: + martin.panter
messages: + msg309660
2018-01-08 08:09:03杨鹏create