Can this function be declared IMMUTABLE? - Mailing list pgsql-general

From beickhof@Lexmark.com
Subject Can this function be declared IMMUTABLE?
Date
Msg-id OF925A5289.2F89A836-ON85257344.0065AAC1-85257344.00693FE6@lexmark.com
Whole thread Raw
Responses Re: Can this function be declared IMMUTABLE?  ("Jaime Casanova" <systemguards@gmail.com>)
Re: Can this function be declared IMMUTABLE?  ("Josh Tolley" <eggyknap@gmail.com>)
List pgsql-general
Hello,

I have a question about whether I can safely declare a function IMMUTABLE.
 Citing the documentation under "Function Volatility Categories" in the
section on "Extending SQL":
----------------------------------------
It is generally unwise to select from database tables within an IMMUTABLE
function at all, since the immutability will be broken if the table
contents ever change.
----------------------------------------

Well, I am considering a function that does read from a table, but the
table contents change extremely infrequently (the table is practically a
list of constants).  Would it be safe to declare the function IMMUTABLE
provided that the table itself is endowed with a trigger that will drop
and recreate the function any time the table contents are modified?  In
this way, it seems that the database would gain the performance benefit of
an immutable function for the long stretches of time in between changes to
the table.

I apologize that I don't have any details -- it is still very early in the
development of the database design, and I was just hoping to get a better
understanding of whether an immutable function would safely offer any
benefit in this scenario.

Thanks very much,
Bobby

pgsql-general by date:

Previous
From: dustov
Date:
Subject: Re: PGError: input out of range
Next
From: mrodriguez@curreyadkins.com
Date:
Subject: how to print a schema