Note: At present, this section is just taken from PostgreSQL documentation and is subject to revision for Postgres-XC.
SPI_connect
opens a connection from a
procedure invocation to the SPI manager. You must call this
function if you want to execute commands through SPI. Some utility
SPI functions can be called from unconnected procedures.
If your procedure is already connected,
SPI_connect
will return the error code
SPI_ERROR_CONNECT. This could happen if
a procedure that has called SPI_connect
directly calls another procedure that calls
SPI_connect
. While recursive calls to the
SPI manager are permitted when an SQL command
called through SPI invokes another function that uses
SPI, directly nested calls to
SPI_connect
and
SPI_finish
are forbidden.
(But see SPI_push
and SPI_pop
.)