From: | Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl> |
---|---|
To: | Jaime Casanova <systemguards(at)gmail(dot)com> |
Cc: | Carlos Alberto Piña Uribe <pibe(at)cadiz-kebir(dot)no-ip(dot)com>, "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Cache de funciones |
Date: | 2005-04-04 16:11:27 |
Message-ID: | 20050404161127.GA27353@dcc.uchile.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On Sat, Apr 02, 2005 at 01:58:47PM -0500, Jaime Casanova wrote:
> On Apr 1, 2005 7:06 PM, Carlos Alberto Piña Uribe
> <pibe(at)cadiz-kebir(dot)no-ip(dot)com> wrote:
Hola,
Un par de precisiones,
> Al llamar a la misma funcion con los mismos parametros puedes estar
> absolutamente seguro que *siempre* regresara los mismo valores? en ese
> caso declarala IMMUTABLE
>
> Lo que hace es que si la declaras IMMUTABLE reemplaza sucesivas
> llamadas a la funcion con el resultado de la primera llamada.
No necesariamente reemplaza. _Puede_ reemplazar (es decir: el
optimizador tiene derecho a reescribir la consulta de manera que en
lugar de invocarse la funcion dos o mas veces, se invoque una sola vez.
El optimizador no esta "obligado" a hacer una tal transformacion).
> Al llamar a la misma funcion con los mismos parametros puedes estar
> absolutamente seguro que dentro de la misma transaccion *siempre*
> regresara los mismo valores? en ese caso declarala STABLE
>
> STABLE reemplaza sucesivas llamadas a la funcion dentro de la misma
> transaccion con el resultado de la primera llamada en esa transaccion.
No dentro de la misma transaccion. Es solo "dentro de un mismo
snapshot", o equivalentemente, dentro de un scan. O lo que es lo mismo,
dentro de una transaccion que tiene ISOLATION LEVEL SERIALIZABLE.
--
Alvaro Herrera (<alvherre[(at)]dcc(dot)uchile(dot)cl>)
"Cuando mañana llegue pelearemos segun lo que mañana exija" (Mowgli)
From | Date | Subject | |
---|---|---|---|
Next Message | Damian Culotta | 2005-04-04 17:47:15 | Crear y usar funciones |
Previous Message | Lic.Antonio Ocampos | 2005-04-04 10:28:43 | Desuscribirme |