creating WITH HOLD cursors using SPI

Поиск
Список
Период
Сортировка
Искать
От
Abhijit Menon-Sen
Тема
creating WITH HOLD cursors using SPI
Дата
Msg-id
20050612092447.GA27994@penne.toroid.org
Список
Дерево обсуждения
creating WITH HOLD cursors using SPI Abhijit Menon-Sen <ams@oryx.com>
Re: creating WITH HOLD cursors using SPI Abhijit Menon-Sen <ams@oryx.com>
Re: creating WITH HOLD cursors using SPI David Fetter <david@fetter.org>
Re: creating WITH HOLD cursors using SPI Andrew Dunstan <andrew@dunslane.net>
Re: creating WITH HOLD cursors using SPI Tom Lane <tgl@sss.pgh.pa.us>
Re: creating WITH HOLD cursors using SPI "Andrew Dunstan" <andrew@dunslane.net>
Re: creating WITH HOLD cursors using SPI Tom Lane <tgl@sss.pgh.pa.us>
Re: creating WITH HOLD cursors using SPI Andrew Dunstan <andrew@dunslane.net>
Hi.

I've been working on making it possible for PL/Perl users to fetch large
result sets one row at a time (the current spi_exec_query interface just
returns a big hash).

The idea is to have spi_query call SPI_prepare/SPI_open_cursor, and have
an spi_fetchrow that calls SPI_cursor_fetch. It works well enough, but I
don't know how to reproduce spi_exec_query's error handling (it runs the
SPI_execute in a subtransaction).

To do something similar, I would have to create a WITH HOLD cursor in my
spi_query function. But SPI_cursor_open provides no way to do this, and
it calls PortalStart before I can set CURSOR_OPT_HOLD myself.

Suggestions?

-- ams

В списке pgsql-hackers по дате отправления
От: Gregory Maxwell
Дата:
От: Yann Michel
Дата:
FAQ