Obrigado pelo conselho de todos
 
Vou verificar. O interessante é que há conexões abertas pelo JBOSS desde ontem 
e seu parametro está configurado para abortar transações após 05min de 
ociosidade. Achamos também que pode ser algo no JBOSS...


________________________________
De: J. Laurindo Chiappa <jlchia...@yahoo.com.br>
Para: oracle_br@yahoogrupos.com.br 
Enviadas: Quarta-feira, 12 de Setembro de 2012 10:58
Assunto: [oracle_br] Re: Ajuda em performance urgentemente

  
Colega, seguinte : primeira coisa, absolutamente NÃO confie em papo de 
desenvolvedor : até hoje não vi UM caso sequer que o sujeito não alegasse que a 
lógica dele é a mais simples e performática possível, e que em resumo o 
problema era "do banco".... Isso é o papinho mais causador de sono em bovinos 
que existe...

O seu plano de ação é direto : primeira coisa, vc Tem que identificar os 
causadores de locks , tranquilamente pode ser que :

- Outras sessões estejam mexendo com a mesma tabela da rotina em questão, assim 
a tal rotina seria uma Vítima, não a culpada 

e/ou

- podem estar acontecendo locks pelos próprios controles do RDBMS, como por 
exemplo no caso de FKs não-indexadas em tabelas de tamanho "grande"

e/ou

- vc pode estar vendo a ação de efeitos colaterais de processamento, como por 
exemplo triggers que são disparadas pelo "INSERT" dele

=> para identificar, um plano de ação fácil seria vc consultar as views 
internas do RDBMS referentes a Transações, Sessões, WAITs e LOCKs ** antes ** 
da tal rotina suspeita começar, disparar a rotina, e fazer várias novas 
consultas durante o processamento da tal rotina ..... Claro que um conhecimento 
PRECISO de quais índices/ constraints/triggers/jobs estão relacionados com as 
tabelas sendo mexidas Vai ser bastante recomendável, consulte as views do 
database Apropriadas e levante isso ...

A Segundo coisa (que pode ser feita em conjunto com o primeira) é vc ter um 
registro EXATO do que a tal rotina está fazendo, passo a passo, cada WAIT dela, 
quanto tempo cada passo está levando, todos os eventos que a sessão executando 
a tal rotina está sofrendo..... Tudo isso se faz com um TRACE + TKPROF da 
execução, que como eu disse vc poderia ativar antes da execução da tal rotina 
acima citada, assim que vc fez as consultas nas views de Transações,Sessões, 
WAITs e LOCKs....

[]s

Chiappa

--- Em mailto:oracle_br%40yahoogrupos.com.br, Jales Jose Moraes 
<malphigjjm@...> escreveu
>
> Pessoal existe uma aplicação em que está causando lock's e deixando outras 
> sessões em lock's indefinidamente. O desenvolvedor alega que é apenas um 
> insert e logo em seguida efetua o commit, mas o fato é que está tudo parado 
> com vários lock's.
>  
> Alguém tem uma sugestão de como podemos proceder para a resolução do problema?
>  
> Oracle 11g Rac...
> 
> [As partes desta mensagem que não continham texto foram removidas]
>




[As partes desta mensagem que não continham texto foram removidas]

Responder a