Go driver: Changes in heartbeat RTT measurement after upgrade to 4.4


We’ve recently upgraded our mongoDB cluster from version 4.2.23 to 4.4.18, and we’ve noticed a change in the reported heartbeat RTT values by the golang SDK (version 1.11.3).

We are collecting these values by adding a server monitor to the client implementation and tracking the Duration of the ServerHeartbeatSucceededEvent event.

What we saw is the expected values in the sub-ms range. However, now we see a constant value of 10s (which I gather that it must be from a timeout). Looking through the SDK code I can see that the way to measure RTT has changed due to the new streaming capabilities of the upgraded mongo version, but I’d still expect a valid Duration value on those events.

Is this the expected behaviour, and if so, how can we properly measure the server’s RTT using the golang SDK?

Thank you,