Re: Stable functions problem
От | Gaetano Mendola |
---|---|
Тема | Re: Stable functions problem |
Дата | |
Msg-id | cq6agu$nal$1@floppy.pyrenet.fr обсуждение исходный текст |
Ответ на | Re: Stable functions problem (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-hackers |
Tom Lane wrote: > Gaetano Mendola <mendola@bigfoot.com> writes: > >>I'm having a bounce of errors because IMMUTABLE and STABLE >>attributes for some of my functions. Let me explain with an example, > > > Hmm. This particular example is a bug in exec_eval_simple_expr() ... > if we're going to bypass SPI then we'd better do the things SPI does > that are needed to maintain the correct execution environment, and > as of 8.0 one of those things is to advance ActiveSnapshot. > I've applied a patch for this. Thank you. I'll try with the CVS version and I'll let you know. > (Memo to self: I'm beginning to wonder > if exec_eval_simple_expr is worth the trouble at all, compared to just > using SPI. The amount of overhead it saves seems to get less with each > new release.) > > >>now here I can continue my function using the my_id_user, unfortunatelly >>that sp_id_user is declared as IMMUTABLE this mean that at the second call >>of sp_id_user my_id_user will not contain the user id. > > > That actually doesn't have anything to do with it --- the same failure > would have occurred if you'd (correctly) declared sp_id_user as STABLE. > So it's a good bug report. Indeed I had the same "problem" declaring it as STABLE. > But I trust you do realize you are playing with fire. While I have been> heard to suggest mislabeling functions as immutableif they're only going> to be used in interactive queries, > I don't think I have ever failed to mention that you *will* get burnt > if you call such functions from other functions. When this coding > someday does break for you, I won't have any sympathy at all... Yes, I'll take your suggestion as gold. Regards Gaetano Mendola
В списке pgsql-hackers по дате отправления: