I'm getting the following error on every run of registry-static:
_http_client.js:277
req.emit('close');
^
TypeError: Cannot read property 'emit' of null
at TLSSocket.socketCloseListener (_http_client.js:277:6)
at emitOne (events.js:101:20)
at TLSSocket.emit (events.js:188:7)
at _handle.close (net.js:509:12)
at TCP.done [as _onclose] (_tls_wrap.js:332:7)
It's happening reliably for me at 317673 while processing ng2-comps. I haven't tried with an empty output folder yet because it takes me a few days to get that far into the database.
note: problem disappeared when I upgraded to node v8.11.1
cc @nodejs/http
@xloem have you tried it on earlier versions of 6.x? Is this a new regression?
I'm afraid that now I have found a way to make it work I'm not available to test this a lot as it takes so long to trigger it. I'm sorry. An obvious approach would be to git bisect between the two versions, but this would take many weeks to complete.
I am also seeing this error after upgrading from v8.11.1 to v8.11.2. Scanning the changelog for v8.11.2, the error seems to be plausibly related to #18865, which seems to have landed in both 6.14.2 and 8.11.2
Pinging @lpinca.
@lpinca the API docs include an example of how to emit the 'agentRemove' event from userland code to remove an socket from an agent.
https://nodejs.org/dist/latest-v8.x/docs/api/http.html#http_class_http_agent
this code reproduces the TypeError for me on v8.11.2:
require('http').get('http://0.0.0.0', (res)=>{}).once('socket', (socket)=>{
socket.emit('agentRemove');
});
@jordanrogers thanks! Didn't think about that use case. I will open a PR to null the property without relying on the 'agentRemove' event and add a regression test.
It's funny that this did go unnoticed for 3 months but I guess that is not a common use case.
I apologize in advance if there is a procedure that I'm not following here, but I couldn't find any for formally requesting backporting of fixes.
Is there a plan to backport this fix into the 6.X and 8.X branches? This bug is biting us on servers running both of those versions.
Thanks in advance.
@bedney it should be backported, not sure why it didn't happen yet. I'll add the required labels to the PR to backport.
Hi, it appears that this issue still exists in 8.11.4, so we are still stuck at 8.11.1. Is there a plan to fix in 8.11, or is 8.12 the nearest fix version?
There will not be another 8.11 release.
Is this fixed in 8.12?
I can confirm that this is fixed in 8.12