Meu maior problema é que não poderei mudar a regra do negócio, pois esse comando está em uma aplicação que não tenho o código-fonte.
Sei que é um mecanismo de LOCK do Banco, mas minha maior dúvida, é porque o problema ocorre em uma determinada Base de Dados e não ocorre em outra?? As duas são Oracle 9.2.0.4, com o mesmo tipo de instalação. Poderia ser algum parâmetro de configuração do Banco?? Atenciosamente, Juliano --- Em oracle_br@yahoogrupos.com.br, Caio Spadafora <caiospadaf...@...> escreveu > > Caros, > > Trata-se do mecanismo de lock do banco de dados. Sugiro você (caso sua regra > de negócio permita) não utilize a cláusula "for update" no seu select, > provavelmente esse sincronismo entre aplicativos não está legal e por conta > disso esta ocorrendo alguma referência ciclica. > > Minha sugestão é você analisar se após esse comit o lock na tabela some, e se > ao iniciar a segunda aplicação em algum momento surge algum enqueue. > > Se você entrar no meu blog: 0011brothers.blogspot.com, existe uma matéria a > respeito de como identificar isso e contornar o problema de maneira > contingêncial. > > O deadlock pode ser causado por alguns fatores e vai depender do seu modelo > de dados, se você tem tabelas filhos envolvidas e algum outro tipo de > dependencia, sugiro que você monitore a v$lock em diferentes momentos dessa > sua execução provavelmente você vai conseguir diagnosticar melhor. > > Atenciosamente, > Caio Spadafora. > http://0011brothers.blogspot.com/ > > --- Em qua, 1/4/09, Júlio César Corrêa <juliotubi...@...> escreveu: > > De: Júlio César Corrêa <juliotubi...@...> > Assunto: Re: [oracle_br] ORA-00060 - Deadlock detected while waiting for > resource > Para: oracle_br@yahoogrupos.com.br > Data: Quarta-feira, 1 de Abril de 2009, 18:07 > > Falei besteira,sim não talvez? > > 2009/4/1 Júlio César Corrêa <juliotubi...@...> > > > Humm. > > > > Assim. > > > > A partir do momento que a a primeira query executa,nenhum,update ou insert > > pode ser executado nestas linhas da tabela TABELA o qual se enquadram na > > clausula where (where nr_pk = 12). > > Enquanto você não executar commit ou rollback você vai ter erro. > > > > No seu caso alguns segundos podem ser responsável por essa diferença. > > > > 2009/4/1 Juliano <juli...@...> > > > > Olá lista, > >> Estou tendo o seguinte problema e gostaria de algum auxílio. > >> > >> Tenho um determinado programa que está rodando a seguinte instrução: > >> > >> Select * from TABELA where nr_pk = 12 for update; > >> update TABELA set campo1=valor1, campo2=valor2 where nr_pk = 12; > >> commit; > >> > >> Após essa instrução, é executado através de OUTRO programa, a seguinte > >> instrução: > >> > >> update TABELA set campo1=valor9 where nr_pk = 12; > >> commit; > >> > >> O problema.... > >> Quando executo esses dois programas em um determinado BD (Oracle 9.2.0.4), > >> tenho a mensagem de erro mostrada no título: Deadlock detected while > >> waiting > >> for resource. > >> > >> Porém, ao executar os mesmos dois programas em outro BD, também (Oracle > >> 9.2.0.4) não é apresentado nenhum erro e as instruções são realizadas > >> corretamente. > >> > >> Penso ser algum parâmetro de configuração na base de dados. Alguém já > >> passou por um problema parecido??? Agradeço qualquer ajuda. > >> > >> OBS: Não tenho como modificar o FOR UPDATE do primeiro programa, pois é um > >> software de outra empresa que está funcionando de forma integrado ao meu. > >> > >> Abraços, > >> Juliano > >> > >> > >> > > > > > > > > -- > > Júlio César Corrêa > > IS Technologist - Oracle DBA > > http://jccorrea.blogspot.com > > > > "To stay competitive in the tech industry, never stop > > learning. Always be on the lookout for better ways of > > doing things and new technologies. Our industry does > > not reward people who let themselves stagnate" > > -John Hall, Senior Vice President, Oracle University > > > > > > > -- > Júlio César Corrêa > IS Technologist - Oracle DBA > http://jccorrea.blogspot.com > > "To stay competitive in the tech industry, never stop > learning. Always be on the lookout for better ways of > doing things and new technologies. Our industry does > not reward people who let themselves stagnate" > -John Hall, Senior Vice President, Oracle University > > > [As partes desta mensagem que não continham texto foram removidas] > > > > ------------------------------------ > > -------------------------------------------------------------------------------------------------------------------------- > >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira > >responsabilidade de seus remetentes. > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ > -------------------------------------------------------------------------------------------------------------------------- > >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » > >Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: > >http://www.oraclebr.com.br/ > ------------------------------------------------------------------------------------------------------------------------ > Links do Yahoo! Grupos > > > > > > Veja quais são os assuntos do momento no Yahoo! +Buscados > http://br.maisbuscados.yahoo.com > > [As partes desta mensagem que não continham texto foram removidas] >