Connection pools setup event timers to check if the network interface time limit is exceeded. Timeouts are handled by fulfilling the promise for pending requests with ErrorCodes::NetworkInterfaceExceededTimeLimit. Older versions (v4.4 and before) also include the timeout (in milliseconds) in the error description.
The timeout calculations may be susceptible to underflow, where the calculated timeout could be a negative number. This ticket should investigate the possibility of negative timeouts in ConnectionPool::SpecificPool::updateEventTimer() and propose fixes if necessary.
Write unit tests for the above mentioned function. Ensure one of the triggers a negative timeout and fix it. Timebox it to 1 day to write the unit test.