We have had a few discussions about the meaning of "iscachable," and I'd like
to nag and post this again.
The current meaning of "iscachable" is to mean that it can last forever in some
persistent cache somewhere that doesn't yet exist, in practice this seems to be
just a some basic transaction level. A function without "iscachable" is called
every time it is used.
It seems there should be 3 core function cache levels:
1) "noncacheable," this should always be called every time it is used.
2) "cachable," this should mean that it will be called only once per unique set
of parameters within a transaction.
3) "persistent," this could mean it never needs to be called twice.
With the above definitions, it would make sense to have "iscacheable" as the
default for a function.
Does this make sense?
pgsql-hackers by date
|Next:||From: Tom Lane||Date: 2001-10-31 00:37:26|
|Subject: Re: with (iscachable) |
|Previous:||From: Tom Lane||Date: 2001-10-30 23:14:07|
|Subject: Re: portability of datafiles |