Fórum java.sql.BatchUpdateException: Lock wait timeout exceeded; try restarting transaction #390290

10/11/2010

0

 Olá pessoal, tenho várias aplicações que trabalham com um único banco de dados. Fazem desde a inserção de dados até simples consultas. Apesar de serem muitas aplicações, elas se separam pelo assunto dentro do banco, porém existem algumas tabelas como a de alunos ue é comum a todas eles, ela serve de base... Bem aliado a isso temos também várias conexões ao mesmo tempo e gerenciadas pelo Spring/JPA/c3p0. Até a 2 semanas atrás estava tudo ok (trabalhou bem por 1 ano), agora vez por outra está aparecendo esta mensagem de "Lock wait timeout exceeded" quando algum usuário tenta alterar ou salvar alguma informação do aluno... pesquisei na net e alguns falaram que era por causa do travamento que o hibernate faz na tabela enquanto executa alguma operação e como são muitas conexões, o tempo excede, porém por que apenas agora esse erro foi manifestar-se e será isso mesmo ou fi algo que fiz de errado em alguma atualização...
Espero que alguém possa ajudar..
Abra
Rodrigo Andrade

Rodrigo Andrade

Responder

Posts

11/11/2010

Dyego Carmo

O  que está acontecendo que está tendo um DEAD LOCK no seu banco de dados , e a transacao está sendo abortada automaticamente depois de X segundos...

Verifique as operacoes que estão no ar...

Responder

Gostei + 0

12/11/2010

Rodrigo Andrade

 Diego como comentei antes, tenho vários aplicativos manipulando a tabela clientes...
 Trabalhamos com uma mesma base de dados, pois tudo gira em torno dela, temos um aplicativo que contrla as notas da faculdade, outro que controla a parte de vôo (pois é uma escola de instrução de vôo também), outro que controla a avaliação conceitual e de desempenho dos alunos que é feita tanto pelos outros alunos quanto pelos professores, ...
 Fica difícil dizer quais são as ações que estão acontecendo em todos eles, porém o único que manipula diretamente o aluno é esse em que está ocorrendo a pane intermitente... volto a salientAR QUE CO0MEÇOU A POUCO...
 Ressalto que todos os aplicativos estão gerenciados pelo Spring, JPA e  JSF , e que a base de dados (classes) é a mesma (importação de projeto base ), só modificando as regras de negócio que são específicas de cada um...
Em algumas pesquisas pude perceber que poderia ser o travamento momentâneo da tabela alunos pelo hibernate (JPA), por alguma modificação no conteúdo, porém não teria que ser extamente naquela linha a modificação?
Aguardo
Responder

Gostei + 0

18/11/2010

Dyego Carmo

Qual é o seu banco de dados ?
E qual o tipo de tabela ?

Responder

Gostei + 0

18/11/2010

Rodrigo Andrade

MYSQL e tabela normal criada com relacionamentos pelo JPA... 
Responder

Gostei + 0

10/12/2010

Dyego Carmo

Utilize tabelas do tipo InnoDB dentro do MySQL.

Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar