The socket#read_from_socket method can raise Timeout::Error when selecting on a socket times out. However, the rest of the driver does not handle this exception - SDAM error handling wouldn't be invoked, etc. Also, the driver should be surfacing Mongo::Error::TimeoutError to the application on timeouts, but in this case it would surface Timeout::Error.
- links to