Friday, August 29, 2008

Re: [pgsql-es-ayuda] Cómo cambio el plan de ejecución de un query

"Carlos Beltrán V." escribió:

> Con el actual estado de la base de datos y el ejemplo antes descrito un
> EXPLAIN ANALYZE corrido en las dos versiones (8.2.6 y 8.3.3) da una
> diferencia abismal ya que en 8.3.3 entra a evaluar la función PL por
> cada linea de la tabla declaraciones_importacion.

Puedes cambiar el COST de la funcion para que intente evaluarla menos
veces. (Nota que si la funcion es "volatile" esto no puede hacerse).

Si eso no resulta, prueba poniendo un OFFSET 0 en el subselect, que
actua como una barrera de optimizacion (para que no aplane el
subselect).

--
Alvaro Herrera http://www.flickr.com/photos/alvherre/
"No deja de ser humillante para una persona de ingenio saber
que no hay tonto que no le pueda enseñar algo." (Jean B. Say)
--
TIP 8: explain analyze es tu amigo

No comments: