Today I learnt that application servers such as WildFly, Tomcat, etc, will use its own database connection pool when configuring a data source. That explained why my connection pool configured in Spring wasn't working, it was being overriding and therefore my connections weren't being refreshed on a database restart. Good to know!