Re: Stateful pointers in set-returning functions

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Stateful pointers in set-returning functions
Дата
Msg-id 27186.1337883710@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Stateful pointers in set-returning functions  (Ian Pye <ianpye@gmail.com>)
Ответы Re: Stateful pointers in set-returning functions  (Ian Pye <ianpye@gmail.com>)
Список pgsql-hackers
Ian Pye <ianpye@gmail.com> writes:
> I'm writing a set-returning function which places a file handle into
> PG's FuncCallContext's user_fctx space. My problem is that when the
> function is ran with a limit clause (SELECT * FROM foo() LIMIT 10) the
> server will stop calling the function automatically, not giving me a
> chance to close the file handle. Is there a way to get the limit value
> inside of foo() and set the max max_calls parameter correctly?

No, and even if there were, this would be a very unsafe practice,
since errors or other issues could result in early termination of the
query.

You would likely be better off using tuplestore return mode so that you
can do all the reading during one call and not have to assume that
you'll get control back again.
        regards, tom lane


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

Предыдущее
От: Sergey Koposov
Дата:
Сообщение: Re: 9.2beta1, parallel queries, ReleasePredicateLocks, CheckForSerializableConflictIn in the oprofile
Следующее
От: Andres Freund
Дата:
Сообщение: Re: Changing the concept of a DATABASE