Open kurtmilam opened 5 years ago
a compelling reason to throw when a developer calls
client.release
more than once
It’s a mistake and hiding mistakes is bad.
Related question: Is there an easy way to determine whether a client has already been released (easier than wrapping
client.release()
in atry...catch
block and ignoring the exception)?
No, because the pool might return the same client again, as the same object. (It should probably be changed so it returns wrapped clients instead of direct client objects in the next major.)
Unless there's a compelling reason to throw when a developer calls
client.release
more than once, I'd prefer to seeclient.release
mutate itself into anoop
the first time it's called - that would be better for developer ergonomics.Related question: Is there an easy way to determine whether a client has already been released (easier than wrapping
client.release()
in atry...catch
block and ignoring the exception)?