From: | Volkan YAZICI <yazicivo(at)ttnet(dot)net(dot)tr> |
---|---|
To: | David Brain <dbrain(at)bandwidth(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: psql memory usage when creating delimited files |
Date: | 2006-09-18 18:21:46 |
Message-ID: | 20060918182146.GA1418@alamut |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Sep 18 01:52, David Brain wrote:
> I had in interesting issue the other day while trying to generate
> delimited files from a query in psql, using:
>
> \f'|'
> \t
> \a
> \o out.file
> select * from really_big_table sort by createddate;
>
> This quantity of data involved here is fairly large (maybe 2-4GB).
> Watching the memory usage, the postmaster consumed a fair chunk of RAM
> (obviously) while running the query, but I was surprised to see psql
> start taking increasingly large quantities or RAM, to the point that in
> the end the machines memory was exhausted, postmaster died (and
> restarted OK) causing psql to quit.
>
> I was surprised in that I assumed that psql would just be taking rows
> from postmaster and writing them to disk, hence requiring very little
> RAM, but it appeared that it tried to load the data into memory.
See "BUG #1756: PQexec eats huge amounts of memory"[1] and "SELECT very
slow"[2] threads in the ml archives.
[1] http://archives.postgresql.org/pgsql-bugs/2005-07/msg00074.php
[2] http://archives.postgresql.org/pgsql-sql/2005-06/msg00118.php
> Is there some option I'm missing in my export script that would prevent
> this happening? I managed to work around the issue by issuing a number
> of smaller queries, but that's not something I want to do on a regular
> basis.
Use COPY instead. (You can also prefer CURSORs in your client
applications. See related discussions.)
Regards.
From | Date | Subject | |
---|---|---|---|
Next Message | Jack Orenstein | 2006-09-18 18:40:27 | Re: Initializing Datums for use with SPI_execute_plan |
Previous Message | David Brain | 2006-09-18 17:52:10 | psql memory usage when creating delimited files |