Re: Explain de store procedure

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Alejandro D(dot) Burne <alejandro(dot)dburne(at)gmail(dot)com>
Cc: Raúl Andrés Duque Murillo <ra_duque(at)yahoo(dot)com(dot)mx>, POSTGRES <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Explain de store procedure
Date: 2010-05-14 02:54:47
Message-ID: 1273805482-sup-8449@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Excerpts from Alejandro D. Burne's message of jue may 13 20:26:10 -0400 2010:
> El 13 de mayo de 2010 19:59, Raúl Andrés Duque Murillo <
> ra_duque(at)yahoo(dot)com(dot)mx> escribió:
>
> > No todos los planes tienen los problemas que plantea Alejandro. Si tu
> >> función no tiene este problema, no es necesario hacer nada.
> >>
> >
> > Gracias Alvaro. Que condiciones deben darse para que se presente este
> > problema?
>
> Me parece que es una situación de casuística más que una regla, en esa bd
> hay unos 160 SPs y es la primera vez que ocurre con alguno de ellos. Es más
> dentro de ese SP hay varias consultas y solo la que expuse es la que tiene
> el inconveniente; creo que la única manera de detectarlos es analizando los
> logs periódicamente y analizando aquellas consultas lentas. También en las
> quejas de los usuarios ;-)
> Porque dependiendo de los parámetros que se le envíen el plan puede ser
> eficiente en determinados casos y terrible en otros para el mismo SP.

Justamente. El problema se presenta cuando uno de los posibles valores
de un parámetro causa un plan diferente que el resto de los posibles
valores; por ej. que uno de los valores más comunes ocupe un % de la
tabla mucho mayor que el resto (si ese parámetro pudiera usarse como
condición de índice, la existencia de ese valor tan común haría que se
usara un recorrido secuencial de la tabla en todas las ejecuciones de la
función, haciéndola mucho más lenta cuando se usan los valores para los
cuales se podría usar un índice).
--

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2010-05-14 03:10:04 Re: restricciones de integridad con inherits
Previous Message Horacio Miranda 2010-05-14 01:19:38 Re: Ejecutar