[CDRIVER-2394] /Topology/invalidate_server/ tests are slow with SSL Created: 21/Nov/17  Updated: 29/Apr/18  Resolved: 29/Apr/18

Status: Closed
Project: C Driver
Component/s: libmongoc, tls
Affects Version/s: None
Fix Version/s: 1.10.0

Type: Bug Priority: Major - P3
Reporter: A. Jesse Jiryu Davis Assignee: A. Jesse Jiryu Davis
Resolution: Cannot Reproduce Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to CDRIVER-1956 Topology scanner's SSL handshake is b... Closed
is related to CDRIVER-2329 Race in /Topology/invalidate_server/p... Closed
Epic Link: Post-3.6 Optimization

 Description   

These tests call mongoc_topology_invalidate_server and then (if the server is 3.6+) they implicitly send "endSessions" from mongoc_client_destroy or mongoc_client_pool_destroy at the end of the test. For some reason, calling "endSessions" involves two SSL handshakes; the first fails after connectTimeoutMS and the second succeeds instantly.

Why does calling mongoc_topology_invalidate_server during the test cause a failed handshake at the end?

Why does the handshake take connectTimeoutMS to fail instead of failing instantly? And is the problem only with OpenSSL?



 Comments   
Comment by A. Jesse Jiryu Davis [ 29/Apr/18 ]

CDRIVER-2624 isn't related. At some point in 1.10 development these tests got fast again, even before I fixed CDRIVER-2624. They take between 10 and 50 milliseconds now. Perhaps Kevin's IPv6 work fixed it.

Comment by A. Jesse Jiryu Davis [ 26/Apr/18 ]

Symptom of CDRIVER-2624?

Generated at Wed Feb 07 21:15:06 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.