In-use connections equal max-pool-size
Descrição da Situação:
Ao rodar processos automáticos de cálculo é retornado a seguinte mensagem:
Erro na resposta do servidor: HTTP Unable to create envelope from given source: .
Possível causa: O serviço não foi encontrado.. Para maiores informações, consulte o log do servidor.
Outra possibilidade: Ao calcular apuração no gestão do ponto:
[SEVERE] [] [br.com.senior.gp.resources.config.ServiceExceptionMapper] [tid: _ThreadID=177 _ThreadName=http-listener-1(7)] [timeMillis: 1622655862413] [levelValue: 1000] [[
RuntimeException: java.lang.RuntimeException: com.sun.messaging.jms.JMSException: MQRA:DCF:allocation failure:createConnection:Error in allocating a connection. Cause: In-use connections equal max-pool-size and expired max-wait-time. Cannot allocate more connections.
java.lang.RuntimeException: java.lang.RuntimeException: com.sun.messaging.jms.JMSException: MQRA:DCF:allocation failure:createConnection:Error in allocating a connection. Cause: In-use connections equal max-pool-size and expired max-wait-time. Cannot allocate more connections.
at br.com.senior.rh.gp.sc.apuracao.SCCalculoApuracao.calcular(SCCalculoApuracao.java:288)
at br.com.senior.resources.facade.FacadeCalculoApuracao.calculoApuracao(FacadeCalculoApuracao.java:298)
Rotina / Tela:
Gestão do Ponto > Calculo apuração
Solução:
O problema está relacionado a quantidade de blocos que são calculados durante os cálculos da apuração/processo automático, neste exemplo foi configurado o cálculo para rodar em 41 blocos, cada bloco cria uma conexão nessa fila JMS, fora outras rotinas do sistema que também utilizam essa fila, por isso deve estar estourando em alguns momentos.
Realizar a alteração no console de administração do Glassfish em:
- Console Glassfish > Resources > JMS Resources > Connection Factories
Maximum Pool Size da fila jms/RONDAG6ConnectionFactory
-Alterado de 42 para 84
Ao final reiniciar o domínio.