Re: Stable functions problem - Mailing list pgsql-hackers

From Gaetano Mendola
Subject Re: Stable functions problem
Date
Msg-id cq6agu$nal$1@floppy.pyrenet.fr
Whole thread Raw
In response to Re: Stable functions problem  (Tom Lane <tgl@sss.pgh.pa.us>)
List 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 by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: yyin's value of postgresql parser
Next
From: Hannu Krosing
Date:
Subject: Re: Permissions within a function