Stavamo affrontando lo stesso problema con RxJava, l'applicazione funzionava correttamente ma dopo un po' di tempo non è stato più possibile acquisire connessioni dal pool. Dopo giorni di debug, abbiamo finalmente capito cosa ha causato il problema:
redisTemplate.setEnableTransactionSupport(true)
in qualche modo ha impedito a spring-data-redis di rilasciare connessioni. Avevamo bisogno del supporto per le transazioni per MULTI / EXEC, ma alla fine abbiamo cambiato l'implementazione per eliminare questo problema.
Ancora non sappiamo se questo sia un bug o un uso sbagliato da parte nostra.