Estourando pool de conexao com looping

0 respostas
pugnator

eu tenho um looping de +/- 1000 e cada looping tem outro de 3 a 12.

no lopping 1 e 2 tem uma chamada pra ejb que faz consultas, inserts. Na chamada.ejb2 tambem faz o mesmo que o anterior e chama mais 2 ejbs pra reutilizar outros metodos. Coloquei uma thread apos cada chamada para evitar eestourar o pool. Mesmo assim com o passar do processamente acaba dando problema e tenho que continuar o looping de onde parou. Qdo nao é esse problema, o banco de dados fica travando e precisar matar o processo para liberar…(o fato de usar trhead para segurar o looping pode estar travando o banco ?)

Qual seria a maneira + viável de fazer isso ?

for(1000){ //1 chamada.ejb1() Thread.sleep(5000) for(3 a 12){ //2 chamada.ejb2() Thread.sleep(5000) }}

javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: Cannot open connection

Criado 13 de janeiro de 2012
Respostas 0
Participantes 1