> -----Original Message----- > From: Tom Lane [mailto:[EMAIL PROTECTED]] > > Hiroshi Inoue <[EMAIL PROTECTED]> writes: > > Tom Lane wrote: > >> Sorry, I don't understand ... > > > Let t be a table which is defined as > > create table t (id serial primary key, dt text); > > Then is the following function *stable* ? > > create function f1(int4) returns text as > > ' > > declare > > txt text; > > begin > > select dt into txt from t where id = $1; > > return txt; > > end > > ' language plpgsql; > > I'm not sure exactly what you mean by "stable" here.
Wasn't it you who defined *stable* as Cachable within a single command: given fixed input values, the result will not change if the function were to be repeatedly evaluated within a single SQL command; but the result could change over time. ? > And I'm even less sure whether you are arguing for or > against adding SetQuerySnapshot calls into plpgsql... I already mentioned an opinion in 2001/09/08. Both the command counters and the snapshots in a function should advance except the leading SELECT statements. regards, Hiroshi Inoue ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])