Algumas coisas. Primeiro, qual versão do HikariCP, Java e do driver MySQL?
Segundo, 400 conexões em um pool? Muitos! Comece com 10 a 20, em cada piscina. Você ficará surpreso por poder lidar com alguns milhares de transações por segundo.
Terceiro, esta é a segunda pergunta no FAQ . Leia a resposta e o link. Você precisa definir
maxLifetime
para algo mais curto (em 1 minuto) do que o tempo limite nativo do MySQL. Por fim, ative o registro do DEBUG, o HikariCP não é barulhento. A cada 30 segundos, o encadeamento de manutenção é executado e registra as estatísticas do pool.