Inicio » Oracle » Optimizacion » Esperas latch: cache buffer chains

Esperas latch: cache buffer chains

Este tipo de contención se da por una sentencia sql lee más buffers de los que necesita y múltiples sesiones esperan para leer el mismo bloque.

Si la contención es muy elevada, se tiene que buscar la sentencia  que lee buffers de más y revisar sus accesos para intentar mejorarla.

La solución suele ser revisar la sql para evitar los accesos innecesarios.

Lo primero para identificar si hay identificar los eventos que provocan esperas, normalmente vemos como las esperas por cache buffers chains van aumentando:

set lines 400 
set pages 400
select count (*), event, max (SECONDS_IN_WAIT) from gv$session_wait group by event;

Con esta select identificaríamos cuál es las sesiones y la select que está provocando las esperas por este evento

SELECT c.status,c.sid, d.piece, c.serial#, c.username,last_call_et segundos, d.sql_text
 FROM v$session c, v$sqltext d
 WHERE c.sql_hash_value = d.hash_value and sid in (select sid from v$session_wait where event='latch: cache buffers chains')
 ORDER BY c.sid, d.piece;

Y a partir de ahí lo que queda es limpiar la select.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s