RxJavaでも同じ問題が発生し、アプリケーションは正常に実行されていましたが、しばらくすると、プールから接続を取得できなくなりました。数日間のデバッグの後、問題の原因を最終的に突き止めました:
redisTemplate.setEnableTransactionSupport(true)
どういうわけか、spring-data-redisが接続を解放しませんでした。 MULTI / EXECのトランザクションサポートが必要でしたが、最終的にこの問題を取り除くために実装を変更しました。
それでも、これがバグなのか、それとも私たちの間違った使い方なのかはわかりません。