-
Notifications
You must be signed in to change notification settings - Fork 30k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Flaky test: parallel/test-tls-ticket-cluster #29341
Comments
/cc @nodejs/cluster ? |
Also on FreeBSD: https://ci.nodejs.org/job/node-test-commit-freebsd/28120/nodes=freebsd11-x64/console 00:15:03 not ok 1983 parallel/test-tls-ticket-cluster
00:15:03 ---
00:15:03 duration_ms: 0.865
00:15:03 severity: fail
00:15:03 exitcode: 1
00:15:03 stack: |-
00:15:03 [master] got "listening"
00:15:03 [master] connecting 28298 session? false
00:15:03 [worker] connection reused? false
00:15:03 [master] got "not-reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [master] connecting 28298 session? true
00:15:03 [worker] connection reused? true
00:15:03 [master] got "reused"
00:15:03 [worker] got "die"
00:15:03 [worker] server close
00:15:03 [worker] exit
00:15:03 [master] worker died
00:15:03 [worker] got "die"
00:15:03 [worker] server close
00:15:03 [worker] exit
00:15:03 [worker] got "die"
00:15:03 [worker] server close
00:15:03 [worker] exit
00:15:03 [master] worker died
00:15:03 [worker] got "die"
00:15:03 [worker] server close
00:15:03 [worker] exit
00:15:03 events.js:186
00:15:03 throw er; // Unhandled 'error' event
00:15:03 ^
00:15:03
00:15:03 Error: write EPIPE
00:15:03 at ChildProcess.target._send (internal/child_process.js:813:20)
00:15:03 at ChildProcess.target.send (internal/child_process.js:683:19)
00:15:03 at sendHelper (internal/cluster/utils.js:22:15)
00:15:03 at send (internal/cluster/master.js:351:10)
00:15:03 at internal/cluster/master.js:317:5
00:15:03 at Server.done (internal/cluster/round_robin_handle.js:46:7)
00:15:03 at Object.onceWrapper (events.js:298:28)
00:15:03 at Server.emit (events.js:214:15)
00:15:03 at emitListeningNT (net.js:1332:10)
00:15:03 at processTicksAndRejections (internal/process/task_queues.js:79:21)
00:15:03 Emitted 'error' event on Worker instance at:
00:15:03 at ChildProcess.<anonymous> (internal/cluster/worker.js:27:12)
00:15:03 at ChildProcess.emit (events.js:209:13)
00:15:03 at internal/child_process.js:817:39
00:15:03 at processTicksAndRejections (internal/process/task_queues.js:75:11) {
00:15:03 errno: -32,
00:15:03 code: 'EPIPE',
00:15:03 syscall: 'write'
00:15:03 }
00:15:03 ... |
I'm so far unable to replicate this locally, but EPIPE can happen if you try to write to a closed stream, and there have been some changes to streams lately... @nodejs/streams? @ronag? |
I can reproduce with
and bisecting points to 4367732 as first bad commit. @nodejs/libuv |
That probably means libuv/libuv@ee24ce9 is responsible (cc @addaleax) but that also means it's probably exposing a latent bug in Node.js (edit: or the test), not introducing a new one. The sole Lines 350 to 354 in 98b7185
|
It looks more like issues with the cluster/child process code to me… currently, synchronous write errors from It generally also looks like there’s very little error handling in the node/lib/internal/cluster/round_robin_handle.js Lines 45 to 48 in 98b7185
Judging from the commit message of 0da4e0e (which added /cc @cjihrig
I think |
Yes, but before libuv/libuv@ee24ce9 that path was always taken. The |
This failure is showing up on v10.x now, specifically on centos7. Did this get figured out on master? Should we mark it as flaky? |
Using |
Saw this one failing on OS X today: https://ci.nodejs.org/job/node-test-commit-osx/33696/nodes=osx1015/testReport/junit/(root)/test/parallel_test_tls_ticket_cluster/ |
Console output
The text was updated successfully, but these errors were encountered: