2011-01-19 25 views
14

compilamos todos nuestros paquetes Oracle con la opción DEPURAR habilitada. Este es el valor predeterminado para nuestro IDE (PLSQLDeveloper). Así que cuando se compila un paquete en el fondo se ejecuta el siguiente:Cuál es la influencia de compilar paquetes ORACLE con DEPURTO

ALTER PACKAGE emp_mgmt 
    COMPILE DEBUG PACKAGE; 

me pregunto si hay otras consecuencias de rendimiento de este. Los documentos de Oracle sobre ALTER PACKAGE no mencionan nada al respecto.

Respuesta

8

Hay toda una gama de optimizations that the PL/SQL compiler puede hacer.

Setting the mode to debug is equivalent to setting the optimizer level to 1 (desactivación de la mayor parte de las optimizaciones)

por lo que podría tener un impacto significativo en el rendimiento.

+1

+1 para documentación y referencias. ¿Podría dejar un extracto de los documentos? He leído en algún lugar de SO que la comunidad debe estar parada, por lo que dejar el extracto aquí evita la pérdida en caso de que la referencia desaparezca. – DarkThrone

+0

genial. Gracias por las referencias. –

+1

Parece que ambos enlaces están ahora muertos. –

4

Oracle proporciona una API de depuración para desarrolladores de IDE. En el caso de que un paquete se compile con la opción DEBUG, es posible establecer puntos de interrupción con esa API. Si compiló todos los paquetes con la opción DEBUG, ¡alguien puede establecer un punto de interrupción a través de esa API para manipular el sistema!

Así que creo que es más un problema de seguridad que un problema de rendimiento para compilar Paquetes en modo de depuración.

EDIT: SET_BREAKPOINT Function en la documentación de Oracle

+0

Gracias. Sabía el significado de la opción DEPURAR, pero es bueno que haya señalado el problema de seguridad, aunque no es un problema en mi entorno. Todavía me pregunto si esto impacta en el rendimiento. –

+0

@Robe Eleckers: ¿Puedes aceptar la respuesta con el gancho gris por favor? ¡Pero solo si es el correcto! Para el rendimiento: creo que en el pasado eran posibles los problemas de preferencia, pero hoy no. – Tim

+0

Esperaré por otras respuestas antes de aceptar esto, ya que no responde completamente mi pregunta. –

2

La compilación con la opción de depuración definitivamente afecta el rendimiento. Una prueba simple que recorre 50,000 veces calculando un metafonía, por ejemplo (muchas pruebas de cadena, si es que ...) toma el doble de tiempo en el modo de depuración.

Cuestiones relacionadas