Re: PGresult pointer and memory usage

Поиск
Список
Период
Сортировка
От Martijn van Oosterhout
Тема Re: PGresult pointer and memory usage
Дата
Msg-id 20050124220826.GF11438@svana.org
обсуждение исходный текст
Ответ на PGresult pointer and memory usage  (Jeff Davis <jdavis-pgsql@empires.org>)
Список pgsql-general
From what I understand:

On Mon, Jan 24, 2005 at 12:14:09PM -0800, Jeff Davis wrote:
> When you do a PQexec call in libpq, does PostgreSQL produce the entire
> result in memory on the server side, and then does libpq hold the entire
> result in memory after it retrieves it?

The server sends the data straight and then forgets it, but the client
library stores all the results before returning.

> The only time that the server sends parts of the result at a time is
> with a cursor, right? And libpq always holds the data that it gets back,
> right?

In a sense. The result of a FETCH is the whole resultset for that
statement, but it keeps the query around for other FETCHes. I don't
believe it holds the entire result (although maybe with a sort...???)

Hope this helps,
--
Martijn van Oosterhout   <kleptog@svana.org>   http://svana.org/kleptog/
> Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a
> tool for doing 5% of the work and then sitting around waiting for someone
> else to do the other 95% so you can sue them.

Вложения

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

Предыдущее
От: Jeff Davis
Дата:
Сообщение: PGresult pointer and memory usage
Следующее
От: Christopher Browne
Дата:
Сообщение: Re: Recursive queries