Crowd full synchronization throwing connection timeout error
Problem
Sometimes Crowd full synchronization may stop working, and can throw a connect timeout error in the UI and logs.
Cause
The application had a failure that the application couldn't heal while the application was still running.
Example of a database connection failure that happened at 7 a.m.:
2024-10-30 07:00:10,650 http-nio-8095-exec-12 ERROR [[Catalina].[localhost].[/crowd].[default]] Servlet.service() for servlet [default] in context with path [/crowd] threw exceptionorg.springframework.transaction.CannotCreateTransactionException: Could not open Hibernate Session for transaction; nested exception is org.hibernate.exception.JDBCConnectionException: Unable to acquire JDBC Connection at org.springframework.orm.hibernate5.HibernateTransactionManager.doBegin(HibernateTransactionManager.java:600) ~[spring-orm-5.3.36.jar:5.3.36]
Later, the database connection was reestablished; however, the application couldn't heal properly. This may happen because many internal processes work with caches, which are only recreated after a restart.
Solution
Create a maintenance window and restart Crowd to properly recreate the cache.
In case that doesn't work, contact Crowd support by opening a ticket at https://support.atlassian.com/contact.