On 8/31/07, Jeff Davis <pgsql@xxxxxxxxxxx> wrote: > On Fri, 2007-08-31 at 13:51 -0400, Merlin Moncure wrote: > > > how about this: > > > create view log_yadda sa > > > select yadda where (select func()); > > > > > > the parens around the function call force it to be evaluated as a scalar. > > > > if you declare func() immutable, you can (maybe) remove the parens > > because the planner folds the call to a constant. This is faster in > > some cases because > > > > I like this approach. I'm a little concerned about PREPARE, however. I > think that might only execute the function once and then not on > subsequent calls, which would then not be audited. At present, immutable functions are only treated as constants during a query, which is what we want (no problems with prepare). I am a little bit concered about interactions with queries wrapping the view...you'll just have to try and see. merlin ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend