Re: Run a transaction block through SPI_execute

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Run a transaction block through SPI_execute
Дата
Msg-id 2658681.1700754465@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Run a transaction block through SPI_execute  (mahendrakar s <mahendrakarforpg@gmail.com>)
Список pgsql-novice
mahendrakar s <mahendrakarforpg@gmail.com> writes:
> When I try to run a transaction block (similar) to below through SPI_execute:
> BEGIN; set transaction read write; ....; COMMIT
> I get an error: SPI_ERROR_TRANSACTION.
> I see that SPI interface does not support transaction manipulation commands.

Yup; you can't execute begin/commit that way.

> Transaction management support only SPI_commit/SPI_rollback.
> I'm more interested in setting `set transaction read write;` through
> SPI interface.

You could look at how plpgsql handles it.  I think though that as
long as you do BEGIN and COMMIT in the approved way, you can feed
the SET through SPI_execute or one of its siblings.

            regards, tom lane



В списке pgsql-novice по дате отправления:

Предыдущее
От: mahendrakar s
Дата:
Сообщение: Run a transaction block through SPI_execute
Следующее
От: Ibrahim Shaame
Дата:
Сообщение: reporting tree into separate columns