close

open override fun close()

Gives the pinned connection back, once the operation holding it is done: an operation after that fails. It waits for that operation at most closeTimeout. An operation still running then has its connection aborted (Connection.abort) and given back, so its statement fails; one still borrowing a connection gives it back unused and fails as closed (borrow). Both steps are best effort there, logged when they fail: neither throws out of the close.