> > I am quite new to postgresql hacking, so I'm sure there is room for > improvements. But, what about this first proposal ? > > > I am not sure, if this solution is enough - what will be done if I store > some values in PL/pgSQL variables? >
You mean if you store the result of a (nested) function evaluation in a PL/pgSQL variable ? Then no nesting will be detected by the parser and in this case the user function must ensure its result is serialized, since it could be stored (in a variable or a table) at any time.
ok
I remember, so I though about similar optimization when I worked on SQL/XML implementation - so same optimization can be used there.