Say I have a function like this.

CREATE OR REPLACE FUNCTION some_constant(
)
    RETURNS text
    LANGUAGE 'plpgsql'
    COST 100
    IMMUTABLE
    ROWS 0
AS $BODY$
begin
return 'some_string';
end;
$BODY$;

Then I have another function that calls it but is also immutable

CREATE OR REPLACE FUNCTION some_proc(
)
    RETURNS text
    LANGUAGE 'plpgsql'
    COST 100
    IMMUTABLE
    ROWS 0
AS $BODY$
declare
  x textl;
begin

x := some_constant();
....
end;
$BODY$;

will postgres know to invalidate the cache on some_proc() if I change the
returned value in some_constant()?

Thanks.

Reply via email to