On 5/28/15 10:15 PM, Craig Ringer wrote:
> I was a puzzled by src/backend/utils/fmgr/README and fmgr.h's
> descriptions of fcinfo->flinfo->fn_extra (FmgrInfo.fn_extra) as they
> seem to conflict with actual usage.
>
> The docs suggest that fl_extra is for the use of function call handlers,
> but in practice it's also used heavily by function implementations as a
> cache space.
The documentation could also be updated about this. It mentions using
fn_extra for PL handlers, gist functions, and set-returning functions,
but it doesn't say that you can use it any old function for anything you
want.
I'm not sure how up to date that README actually is. It looks more like
a historical document describing the original proposal.