Re: BUG #5611: SQL Function STABLE promoting to VOLATILE

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Brian Ceccarelli <bceccarelli(at)net32(dot)com>
Cc: "pgsql-bugs(at)postgresql(dot)org" <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #5611: SQL Function STABLE promoting to VOLATILE
Date: 2010-08-11 15:18:26
Message-ID: 5912.1281539906@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Brian Ceccarelli <bceccarelli(at)net32(dot)com> writes:
> STABLE no longer means STABLE. This behavior is killing my performance. I am getting 500% to 30000% increase in latency.

You seem to be under the illusion that "stable" is a control knob for a
function result cache. It is not, and never has been. Postgres doesn't
do function result caching.

If you've constructed your app in such a way that it depends on not
inlining SQL set-returning functions, it's fairly easy to defeat that.
>From memory, marking a SRF as either strict or volatile will do it
(although volatile might cause you problems elsewhere --- I suspect
your design is pretty brittle in this area).

regards, tom lane

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Robert Haas 2010-08-11 15:32:52 Re: BUG #5611: SQL Function STABLE promoting to VOLATILE
Previous Message Kevin Grittner 2010-08-11 15:10:45 Re: BUG #5612: Database Integrity