Bob Price <rjp_email@xxxxxxxxx> writes: > If I set the COST of expensivefunc high, and label it IMMUTABLE, will the query executor note that the two invocations to expensivefunc have the same inputs so it can only call it once and re-use the result the second time? No. There is a myth prevalent among certain wishful thinkers that IMMUTABLE does something like that, but it doesn't. IMMUTABLE only licenses the planner to fold a call *with constant arguments* into a constant result, by executing the function once before the query actually starts. Textually distinct calls of a function are not folded together in any case. regards, tom lane -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general