-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Fully Compatible
-
Service Arch 2022-04-04, Service Arch 2022-04-18, Service Arch 2022-05-02, Service Arch 2022-05-16, Service Arch 2022-05-30, Service Arch 2022-06-13, Service Arch 2022-06-27, Service Arch 2022-07-11, Service Arch 2022-07-25, Service Arch 2022-08-08, Service Arch 2022-08-22
-
42
Mongos (and mongod) maintain connection pools wrapped by task executors. These pooled connections are used to perform RPC. Sometimes, these RPC operations come in 'bursts' and no pre-existing pooled connections are available to serve some operations. In these cases, operations are bottlenecked behind new-connection-establishment. We'd like to understand how much time is spent establishing new connections to better understand this potential bottleneck.
Let's create a measurement of wall-time for this new-connection establishment.
Ideally, it would also be good to include partial measurements for each step of the connection establishment, including:
- Establishing the TCP connection/sockets.
- Resolving DNS
- Performing the TLS handshake
- MongoDB auth
Including parts of the detailed breakdown, especially MongoDB auth, may be better suited to break-out into separate tickets after some investigation.
- is depended on by
-
COMPASS-6022 Investigate changes in SERVER-64964: Measure egress connection creation time from connection pools
- Closed