Seino Yuki <seinoyu@oss.nttdata.com> writes:
> Of course, executing SET TRANSACTION ISOLATION LEVEL with SPI_execute
> will result in error.
> ---
> SPI_execute("SET TRANSACTION ISOLATION LEVEL SERIALIZABLE", false, 0);
> (Log Output)
> ERROR: SET TRANSACTION ISOLATION LEVEL must be called before any query
> CONTEXT: SQL statement "SET TRANSACTION ISOLATION LEVEL SERIALIZABLE"
Even if you just did SPI_commit? That *should* fail if you just do
it right off the bat in a SPI-using procedure, because you're already
within the transaction that called the procedure. But I think it
will work if you do SPI_commit followed by this SPI_execute.
regards, tom lane