Repository navigation
Issue passing file descriptors in OS X #7512
Copy link
Copy link
Closed
Labels
child_processIssues and PRs related to the child_process subsystem.Issues and PRs related to the child_process subsystem.macosIssues and PRs related to the macOS platform.Issues and PRs related to the macOS platform.netIssues and PRs related to the net subsystem.Issues and PRs related to the net subsystem.
Description
Activity
- addedmacosIssues and PRs related to the macOS platform.Issues and PRs related to the macOS platform.fsIssues and PRs related to file-system APIs and the fs module.Issues and PRs related to file-system APIs and the fs module.
on Jul 1, 2016 - addedchild_processIssues and PRs related to the child_process subsystem.Issues and PRs related to the child_process subsystem.
on Jul 1, 2016 - addednetIssues and PRs related to the net subsystem.Issues and PRs related to the net subsystem.and removedfsIssues and PRs related to file-system APIs and the fs module.Issues and PRs related to file-system APIs and the fs module.
on Jul 1, 2016 Someone reported the same issue on the libuv mailing list recently: https://groups.google.com/d/msg/libuv/CuWJ28ZMmpY/YlIIeKdPBAAJ
I haven't been able to reproduce with OS X 10.8.5 or on other operating systems. It's possible it's a regression in newer xnu kernels, maybe a failure to increment the file description's reference count in SCM_RIGHTS operations.
I don't think we can work around that in libuv (it doesn't know when the file descriptor has been received) so a node.js workaround might be the best course of action.
@bnoordhuis Thanks for the info. I'll follow with a PR later today. Is there a place to report this upstream?
You mean to Apple? They have something called Radar but it's a massive black hole, don't expect any feedback.
- added a commit that references this issue
on Aug 24, 2016 - added a commit that references this issue
on Oct 3, 2016 - added a commit that references this issue
on Oct 18, 2016 - added a commit that references this issue
on Oct 26, 2016
Metadata
Metadata
Assignees
Labels
child_processIssues and PRs related to the child_process subsystem.Issues and PRs related to the child_process subsystem.macosIssues and PRs related to the macOS platform.Issues and PRs related to the macOS platform.netIssues and PRs related to the net subsystem.Issues and PRs related to the net subsystem.
v7.0.0-preOS X 10.11.5The
test-cluster-net-send.jstest is sometimes failing when running the test suite in myOS Xwith the following output:After investigating the issue it looks like that the error happens only when the
fdthat passes the worker to the master is closed before it is received in the master process. The following patch, that closes thefdonly after receiving theNODE_HANDLE_ACKmessage fixes the issue for me.This seems strange to me as my understanding was that closing the file descriptor after sending it was safe (at least in my Linux box I have not been able to reproduce the same issue). Thoughts?