Savepoints and SPI

Поиск
Список
Период
Сортировка
От Thomas Hallgren
Тема Savepoints and SPI
Дата
Msg-id 42387C8D.8050103@mailblocks.com
обсуждение исходный текст
Ответы Re: Savepoints and SPI  (Alvaro Herrera <alvherre@dcc.uchile.cl>)
Список pgsql-hackers
I have some test code that utilize SPI and does the following:

1. SPI_connect
2. set a savepoint (using BeginInternalSubTransaction)
3. execute a statement that contains a syntax error (within PG_TRY/PG_CATCH)
4. rollback to the savepoint (RollbackAndReleaseCurrentSubTransaction)
5. execute some other statement.

it errors out in step 5 with SPI_ERROR_UNCONNECTED. It seems that step 
3, when it encounters an error, automatically executes a SPI_finish. Is 
that the desired behavior?

Should I assume that _all_ errors will act this way, i.e. should I 
assume that if I end up in a PG_CATCH() that my SPI has been 
disconnected always?

Regards,
Thomas Hallgren


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

Предыдущее
От: Andrew Dunstan
Дата:
Сообщение: Re: contrib/pg_buffercache
Следующее
От: Alvaro Herrera
Дата:
Сообщение: Re: Savepoints and SPI