summaryrefslogtreecommitdiff
path: root/deps
diff options
context:
space:
mode:
authorisaacs <i@izs.me>2013-02-14 08:57:32 -0800
committerisaacs <i@izs.me>2013-02-14 16:03:40 -0800
commitc9dcf5718cf47322b00f2994797aebb68d7ed0fb (patch)
tree2976b29dbf04750aa51c0e6768271fd16cab0430 /deps
parent3e2be6f39f70b444294a094cd47441b0107b2c35 (diff)
downloadnode-c9dcf5718cf47322b00f2994797aebb68d7ed0fb.tar.gz
http: Raise hangup error on destroyed socket write
Prior to v0.10, Node ignored ECONNRESET errors in many situations. There *are* valid cases in which ECONNRESET should be ignored as a normal part of the TCP dance, but in many others, it's a very relevant signal that must be heeded with care. Exacerbating this problem, if the OutgoingMessage does not have a req.connection._handle, it assumes that it is in the process of connecting, and thus buffers writes up in an array. The problem happens when you reuse a socket between two requests, and it is destroyed abruptly in between them. The writes will be buffered, because the socket has no handle, but it's not ever going to GET a handle, because it's not connecting, it's destroyed. The proper fix is to treat ECONNRESET correctly. However, this is a behavior/semantics change, and cannot land in a stable branch. Fix #4775
Diffstat (limited to 'deps')
0 files changed, 0 insertions, 0 deletions