Chiapa / Wilson, obrigado pela ajuda....! Depois de alguns testes da interface descobri que o "latch cache buffer chain" estava sendo causado por um indice que foi criado. Após a criação desse indice a interface passou a demorar 10x mais....eu desabilitei o indice e na execução seguinte a interface voltou para seu tempo de execução normal.... Mas não entendi como um indice pode causar o latch nesssa interface....as estatisticas dele estao atualizas, o indice é um Btree global composto por um unico campo campo number(3) com baixa cardinalidade....e a tabela é particionada por data....
Não tenho acesso ao usuário SYS, por isso nao consegui consultar a tabela X$BH para identificar os blocos em latch.... Respondendo ao Chiapa o SEQ# da v$session_wait troca constantemente, porém com com endereço de memória passado no P1, só consegui fazer join com as v$latchXXXXXXX, só que em nenhuma eu consegui referenciar um objeto que poderia ter seu bloco "preso" em memória. Não sei se pode estar relacionado, mas essa interface é disparada por uma arquitetura atravéz de um EXECUTE IMMEDIATE ' Call Procedure', qnd tento acompanhar oq essa sessao esta executando através da v$session, v$sql ou v$sqlarea o Sqlid sempre aponta para a chamada da proc 'Call Procedure' e não ao que a session está exatamente executando. Pra exemplificar, digamos que a procedure que chamei esteja fazendo um insert, nao visualizo esse insert na v$sqlarea, mas sei q ele esta sendo executado, pois estou utilizando a dbms_application_info.set_module para identificar em que ponto a procedure esta... Vocês poderiam tentar me explicar os pontos acima??? Mt obrigado pela atenção!!! Abçs!!! Thiago Azevedo 2008/6/17 wilson teixeira <[EMAIL PROTECTED]>: > Há pouco tempo me deparei com este evento de espera e o diagnostico foi: > Query mal escrita. Havia uma inner query consultando uma tabela e a query > mais externa consultava a mesma tabela. Elas disputavam os mesmos blocos na > SGA, vc pode consultar a X$BH para identificar quais são os blocos deste > latch... > > _____ > > De: oracle_br@yahoogrupos.com.br <oracle_br%40yahoogrupos.com.br> [mailto: > oracle_br@yahoogrupos.com.br <oracle_br%40yahoogrupos.com.br>] Em > nome de jlchiappa > Enviada em: segunda-feira, 16 de junho de 2008 19:53 > Para: oracle_br@yahoogrupos.com.br <oracle_br%40yahoogrupos.com.br> > Assunto: [oracle_br] Re: Wait event: latch: cache buffers chains > > > Seguinte : > > a) primeiro, em desconhecendo versão 10.0.2, suponho que vc fala sobre > banco 10.2.0.x : sendo isso, é VITAL vc indicar exatamente QUAL é o x > : desconheço bugs específicos para esse latch, mas sei (de ouvir > falar, já que fui direto pro 10.2.0.3), que no 10.2.0.1 e .2 houveram > uns tantos bugs diversos sobre performance (especialmente com SGA e > PGA automáticas), de repente é um desses que vc está enfrentando e o > latch é consequ~encia da má performance, não a causa > > b) exatamente QUAL é esse bug que vc diz que viu ? Numa busca simples > no metalink só achei bugs referentes à latch em situações muito muito > específicas, como o bug 4742607 > > => e ÓBVIO, antes de sair caçando bugs, SEMPRE é reconedado e > recomendável se verificar EXATAMENTE o que está acontecendo : > > c) recomendaria o estudo da nota Subject:How to Identify Which Latch > is Associated with a "latch free" wait, Doc ID: Note:413942.1, ela > discorre sobre os métodos para se identificar EXATAMENTE o que ocorre > na situação de latch > > d) a nota não fala, mas (se o wait pelo latch é maior do que o tempo > de refresh das tabs internas refletidas nas v$), vc : > > 1. na v$session_wait vc tem o SEQ#, pra saber se entre duas > consultas o wait event de cache buffer chain que vc está vendo é o > mesmo que AINDA não foi atendido ou se é outro > 2. pode consultar a v$access, as views de latch e o p1, p2 e p3 para > tentar identificar o objeto sendo acessado > 3. pode usar o trace + tkprof, esse é um dos métodos MAIS eficientes > pra vc avaliar waits > > e sendo banco 10g vc : > > 4. pode checar o SQL_ID e o PREV_SQL_ID na V$SESSION para a sessão > que está tendo esse wait, será que é o mesmo SQL ou não ? > 5. se tiver direito, pode usar o ASH pra ter um HISTÓRICO de quais > waits a tua sessão enfrentou, até pra saber se esse latch wait está > MESMO sendo relevante ou não > > []s > > Chiappa > > --- Em [EMAIL PROTECTED] > <mailto:oracle_br%40yahoogrupos.com.br<oracle_br%2540yahoogrupos.com.br> > > > os.com.br, "Thiago Azevedo" > <[EMAIL PROTECTED]> escreveu > > > > Pessoal, > > > > Uma das interfaces de um bade de produção 10.0.2, constantemente > "trava" e > > fica com wait event de "latch: cache buffers chains", lendo sobre > isso eu > > encontrei alguns textos que pode ser um bug da versão 10.0.2, > inclusive no > > metalink, porém o bug em questão está como privado e não tenho como > ler oq > > pode ser feito. > > > > Caso eu mate a sessão e restart a interface ela é executada rapidamente. > > > > Alguém já teve esse problema? > > > > -- > > Thiago Azevedo > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > [As partes desta mensagem que não continham texto foram removidas] > > > -- Thiago Azevedo Accenture Brazil Services - AO Carrefour Work: 55 11 51888492 Mobile: 55 13 81453524 email: [EMAIL PROTECTED] MSN IM: [EMAIL PROTECTED] [As partes desta mensagem que não continham texto foram removidas]