Andres Freund <andres@2ndquadrant.com> writes:
> On 2014-05-04 01:57:43 -0700, alexandros_e wrote:
>> I have to execute an SQL query to Postgres by the following code. The query
>> returns a huge number of rows (40M or more) and has 4 integer fields: When I
>> use a workstation with 32Gb everything works but on a 16Gb workstation the
>> query is very slow (due to swapping I guess). Is there any way to tell the
>> C++ to load rows at batches, without waiting the entire dataset? With Java I
>> never had these issues before, due to the probably better JDBC driver.
> Try looking into either using a serverside cursor or COPY.
Another possibility is libpq's recently-introduced row-at-a-time mode:
http://www.postgresql.org/docs/9.3/static/libpq-single-row-mode.html
though I'm not sure how effectively that's supported by libpqxx.
regards, tom lane