Thomas Hallgren <thhal@mailblocks.com> writes:
> PL/Java will not handle the RECORD case gracefully at present I'm
> afraid. The 8.0 compatible version will need some improvements. How is
> the TupleDesc obtained in case of RECORD in 8.0.x? Is it the same in 7.4?
In 8.0 and before I think you have to look in fcinfo->resultinfo to see
if an expectedDesc is supplied via a ReturnSetInfo. get_call_result_type()
handles that case along with the OUT-parameters case and the returns-a-
named-composite-type case, so it makes things a little easier and more
consistent.
You could do worse than to back-port get_call_result_type() into your
older branches and just leave out the code for the OUT parameter case.
regards, tom lane