-
Type:
Bug
-
Resolution: Done
-
Priority:
Unknown
-
None
-
Affects Version/s: None
-
Component/s: None
Summary
The jruby-auth Evergreen variant (ruby-jruby-9.4, auth-and-ssl, ubuntu2204) fails wholesale with thousands of test failures driven by Mongo::Error::SocketError: Errno::EBADF: Bad file descriptor on TLS connections. Reproduced on patch 69e630cd4f9fc800077dd8ea (4411 failed tests of 24286).
Observed
Sample log lines:
W, MONGODB | Error running awaited hello on localhost:27018: Mongo::Error::SocketError: Errno::EBADF: Bad file descriptor - No message available (for 127.0.0.1:27018 (localhost:27018, TLS)) (on localhost:27018)
Failures cascade across unrelated specs (spec/mongo/auth/user/view_spec.rb, etc.) because TLS socket establishment fails reliably.
Likely cause
Known jruby-openssl compatibility issues (see comments in .evergreen/config/standard.yml.erb around the OCSP variants) suggest a jruby + TLS + recent jruby-openssl version incompatibility. Not investigated in depth.
Action taken
The jruby-auth matrix is disabled in .evergreen/config/standard.yml.erb as a quick mitigation — other jruby variants (non-auth / non-TLS) keep running.
Next steps
- Investigate jruby + TLS stack; try a different jruby-openssl version, or MRI-only for auth+ssl.
- Decide whether to restore jruby-auth or permanently drop it from the matrix.