if the pool has no more available connections, it raises a timeout exception (ConnectionPool::TimeoutError which is a subclass of Timeout::Error)
however the ensure currently catches it and masks that exception with a ConnectionPool::Error: no connections are checked out
as far as I can tell, scoping the exception handling block a little tighter has no other impact than letting this exception through, so the consumer can actually detect the issue
if the pool has no more available connections, it raises a timeout exception (ConnectionPool::TimeoutError which is a subclass of Timeout::Error)
however the
ensure
currently catches it and masks that exception with aConnectionPool::Error: no connections are checked out
as far as I can tell, scoping the exception handling block a little tighter has no other impact than letting this exception through, so the consumer can actually detect the issue
any feedback/suggestions/alternatives welcome
cc @drbrain @tenderlove