Thread View: chile.comp.programacion
1 messages
1 total messages
Started by claudio.torres
Wed, 30 May 2007 14:53
Alguien que se peine en Oracle + Visual Basic 6.0
Author: claudio.torres
Date: Wed, 30 May 2007 14:53
Date: Wed, 30 May 2007 14:53
51 lines
3165 bytes
3165 bytes
Hola!
Tenemos un problema. Una consulta SQL se queda pegada en forma
aleatoria, esto es, se pega un rato en un equipo, demorandose 5
minutos en salir. Al rato ejecutas la consulta y pasa volando. Pasa
además en algunos equipos hoy, en otros equipos al rato, luego no
pasa, y asi, totalmente al azar.
La consulta es del tipo.
select campo1, campo2, campo3 from tabla1, tabla2, tabla3 where joins
y 4 condiciones.
Lo unico extraño es que una de las condiciones es sobre un campo
definido en oracle como NUMBER y el parametro se pasa en Visual Basic
como texto. Pero nunca antes fallaba, solo ahora.
Cabe destacar que nunca presentó problemas sino hasta que hicieron una
migracion de datos. Es posible que hayan tocado algo y la consulta
haya empezado a comportarse erráticamente? Pero por que solo esa
consulta y ninguna otra de las mas de 100 que corren diariamente?
Los indices están correctos, las estadisticas tambien, todo ok. Puede
haber algun parámetro que esté molestando?
Oracle 10g
Gracias.
Respondo.
La consulta debiera traer como resultado como maximo 30 registros de
una tabla que posee 5 millones de registros app. El tema de indices y
eso debiera estar bien, pq nunca habia fallado solo ahora, y ya
revisamos los indices y estadisticas y está todo bien
este es el plan (Costo 6!!!)
Operation Object Name Rows Bytes Cost Object
Node In/Out PStart PStop
SELECT STATEMENT Optimizer Mode=ALL_ROWS
1 6
NESTED LOOPS 1 61 6
NESTED LOOPS 1 37 5
TABLE ACCESS BY INDEX ROWID TAB1 1 25 4
INDEX RANGE SCAN DEEV_PRAC_FK_I 1 3
TABLE ACCESS BY INDEX ROWID TAB2 1 12 1
INDEX UNIQUE SCAN PRAC_PK 1 0
TABLE ACCESS BY INDEX ROWID TAB3 1 24 1
INDEX UNIQUE SCAN ATENEA.ACTD_PK 1 0
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads