Olá pessoal, estou utilizando o Hibernate pra se conectar a um banco de dados MySQL… aí vem aquele problema clássico… como resolver o “Too many connections” sendo que após cada query ou ação de inserção/remoção/alteração eu já estou utilizando:
session.flush();
session.close();
Me parece que as conexões não estão sendo fechadas como deveria…
Se alguém puder me ajudar… =D
Abraços,
Adriano
Confira o número de conexões que você permite no pool ( é comum a configuração estar com mais do que o banco disponibiliza);
Se uma transação não for finalizada, ele não retorna a conexao ao pool ( não lembro como o hibernate procede com o session.close() );
Confira quantas conexões simultâneas ele está ocupando;
Veja se não tem alguma “ponta solta” ( vai que uma classe está falha em algum lugar? ).
Até!
adrianostanley
Já conferi e não há pontas soltas... visto que todas as ações são executadas em uma classe DAO genérica... ou, seja, já bati o olho em cada ação e não encontrei nenhuma que não fechasse a conexão no final.
Enfim, o modo como eu busco as sessões é através de um método estático em uma classe dessa maneira:
Resolvido pessoal…
Bastava apenas fechar a factory de sessões que as threads da lista de processos do MySQL são encerradas, não ocupando mais uma conexão…
Fica aqui então um exemplo pra quem futuramente tiver esse problema.
Um grande abraço a todos…