Estou tentando usar o pool do jboss usando o datasource dele. E tenho uma rotina para fazer inserts/updates em vários bancos. E essa rotina esta parando na linha depois do PreparedStatment, mas especificamente no stmt.execute() q vai tentar fazer um insert na tabela principal. Eu já procurei me informar e talvez tenha algum problema no pool do jboss ou algum problema no oracle. O meu datasource esta assim:
Acho mais provável que vc esteja em um lock do banco de dados não ?
jason_bourne
nbluis:
Acho mais provável que vc esteja em um lock do banco de dados não ?
Talvez sim…mas como faria pra tirar o lock? tem alguma forma pelo próprio java ou jboss?
nbluis
Não.
Ou sua tabela está em lock, ou o seu processo está gerando lock.
Tipo com transações paralelas no mesmo processo.
Vc tem um DBA? peça ajuda a ele;
Ou um acesso com usuário “monster moda fucker”, dai a gente consegue um script te mostra os locks.
jason_bourne
nbluis:
Não.
Ou sua tabela está em lock, ou o seu processo está gerando lock.
Tipo com transações paralelas no mesmo processo.
Vc tem um DBA? peça ajuda a ele;
Ou um acesso com usuário “monster moda fucker”, dai a gente consegue um script te mostra os locks.
Mas como faço para evitar isso? preciso testar e restestar essa rotina e as vezes preciso dar um stop nela para modificar alguma coisa e reinicia-la.
nbluis
Cara, tu não pode ter duas transações concorrentes fazendo comandos DML uma dependente da outra sem commits no meio entende ? Pois assim uma tranca a outra.
jason_bourne
Então preciso fazer commit sempre ?
nbluis
Não… não sempre…
Isso é uma situação que tem que ser analisada muito de perto…
Entenda quando o lock acontece (se é que acontece) e depois ache uma solução;
jason_bourne
nbluis:
Não… não sempre…
Isso é uma situação que tem que ser analisada muito de perto…
Entenda quando o lock acontece (se é que acontece) e depois ache uma solução;