Tema: Bulk Collect
Ver Mensaje Individual
  #5 (permalink)  
Antiguo 13/01/2012, 19:54
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 10 meses
Puntos: 360
Respuesta: Bulk Collect

Cita:
Una corrección al comentario de huesos52, los datos del bulk collect se almacenan en la PGA y solo están disponibles para la sesión que los crea.
Lo digo por que ya lo viví.
tenía un paquete en PL donde instanciaba un objeto que hacia referencia a una tabla en memoria. Antes de hacer ciertas operaciones, no validaba contra la tabla, sino contra la tabla en momoria que habia cargado anteriormente. (para ganarme unas cuantas consultas)
En nuestra BD de QA, el procedimiento funcionaba de maravillas, pues la transaccionalidad de esta no se compara con producción. Al momento de pasarla a nuestro ambiente productivo, m dí cuenta que era bastante inestable en los resultados que generaba.

El problema estaba en la tabla en memoria, ya que otra sesión diferente iniciaba el paquete, instanciaba la tabla y hacia uso de la información que tenia cargada, mas no la que debia usar.

La solución fue evitar la validación contra la tabla en memoria y hacer uso de una consulta directamente a la BD.

Si el servidor está en modo dedicado, si hay una reserva de PGA por sesión, pero si es compartido, pensaría que las tablas en memoria pueden ser accequibles por diversas sesiones.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming