Re: [PERFORM] psql -A (unaligned format) eats too much

Поиск
Список
Период
Сортировка
От Zoltan Boszormenyi
Тема Re: [PERFORM] psql -A (unaligned format) eats too much
Дата
Msg-id 44845F99.7050306@dunaweb.hu
обсуждение исходный текст
Ответ на Re: [PERFORM] psql -A (unaligned format) eats too much memory  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Hi!

Tom Lane írta:
> "Jim C. Nasby" <jnasby@pervasive.com> writes:
>   
>> I've been able to verify this on 8.1.4; psql -A -t -c 'SELECT * FROM
>> largetable' > /dev/null results in psql consuming vast quantities of
>> memory. Why is this?
>>     
>
> Is it different without the -A?
>
> I'm reading this as just another uninformed complaint about libpq's
> habit of buffering the whole query result.  It's possible that there's
> a memory leak in the -A path specifically, but nothing said so far
> provided any evidence for that.
>
>             regards, tom lane
>   

So, is libpq always buffering the result? Thanks.
I thought psql buffers only because in its formatted output mode
it has to know the widest value for all the columns.

Then the SELECT INTO TEMP ; COPY TO STDOUT solution
I found is _the_ solution.

I guess then the libpq-based ODBC driver suffers
from the same problem? It certainly explains the
performance problems I observed: the server
finishes the query, the ODBC driver (or libpq underneath)
fetches all the records and the application receives
the first record after all these. Nice.

Best regards,
Zoltán Böszörményi



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

Предыдущее
От: Andrew Dunstan
Дата:
Сообщение: Re: [PERFORM] psql -A (unaligned format) eats too much
Следующее
От: "Mark Woodward"
Дата:
Сообщение: Re: [PERFORM] psql -A (unaligned format) eats too much