Thomas Hallgren <thhal(at)mailblocks(dot)com> writes:
> My question is, what happens when the evaluator doesn't need more rows?
> Will it:
> a) call the function with call_cntr >= max_calls?
> b) continue calling until the set is exhausted anyway?
> c) simply stop calling?
(c)
> a) seems unlikely since max_calls is set by the user, b) doesn't seem
> very optimal, and c) would be very bad since it doesn't give me any
> chance to release the resources that where used in order to produce the
> rows.
This is what RegisterExprContextCallback is for.
regards, tom lane