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]
>


Responder a