I'm going to rewrite it to use your tuplestore suggestion.
OK, so SPI is only suitable for single-call functions, right? If another function in the query attempted to use SPI, I assume there would be a deadlock?
Regards, Ian
On Thu, Sep 22, 2016 at 7:25 PM Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
Ian Campbell <ianrc72@xxxxxxxxx> writes:
> Thanks for personally replying, Tom. I appreciate it.
> You are correct. In the interim, I found the following change solved the
> issue:
> SPI_finish(); // move to here
> SRF_RETURN_DONE(funcctx);
That might work under light usage, but the problem with it is you're
blocking any other function in the same query from using SPI, since
you're leaving your own connection active when returning. Sooner
or later that's gonna be a problem.
regards, tom lane