mirror of
https://github.com/nodejs/node-v0.x-archive.git
synced 2026-04-28 03:01:10 -04:00
c9dcf5718cf47322b00f2994797aebb68d7ed0fb
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
Evented I/O for V8 javascript. 
To build:
Prerequisites (Unix only):
* Python 2.6 or 2.7
* GNU Make 3.81 or newer
* libexecinfo (FreeBSD and OpenBSD only)
Unix/Macintosh:
./configure
make
make install
If your python binary is in a non-standard location or has a non-standard name, run the following instead:
export PYTHON=/path/to/python
$PYTHON ./configure
make
make install
Windows:
vcbuild.bat
To run the tests:
Unix/Macintosh:
make test
Windows:
vcbuild.bat test
To build the documentation:
make doc
To read the documentation:
man doc/node.1
Resources for Newcomers
Description