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 <t...@sss.pgh.pa.us> wrote:

> Ian Campbell <ianr...@gmail.com> 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
>

Reply via email to