net: unexpected ETIMEDOUT in connect on macOS 10.12 #19302
Labels
early-in-cycle
A change that should be done early in the 3 month dev cycle.
FrozenDueToAge
help wanted
NeedsFix
The path to resolution is known, but the work has not been done.
OS-Darwin
Testing
An issue that has been verified to require only test changes, not just a test failure.
Milestone
https://build.golang.org/log/79f69de95c47982e0981d7abb714cfa2638daf02 says
The error is misleading. It looks like we did getsockopt to ask for SO_ERROR and getsockopt did not itself fail but instead told us that the error associated with the socket was ETIMEDOUT. The code here (in
(*netFD).connect
) is a bit confusing and appears to be working around a different mystery, #14548.One option would be to add ETIMEDOUT to the switch on syscall.Errno, alongside EINPROGRESS, EALREADY, EINTR. That would either fix the problem or create an infinite loop. It's hard to say which.
Speaking of infinite loops, I wonder if the confusing loop here is the underlying cause for #18541, #18741, #18877.
The text was updated successfully, but these errors were encountered: