There is one inconvinient bug in the driver:
I tested this with the very least CVS version, so it exists.
psql
> select * from test1;
(104 rows)
isql marko XXX
2 rows returned
So I get the above result by configuring .odbc.ini:
[marko]
Fetch = 2
UseDeclareFetch = 1
So unfortunately it fetches too few rows.
Old behaviour:
1. SELECT * from test1 with cursor STM7737819
2. While more rows; do Fetch at most 2 rows; done
3. CLOSE CURSOR maybe with STMT_DROP.
So this hack was implemented to support SELECT * of more than
a few million rows.
So without this hack, with 32 bit operating systems, query results are
limited
into maybe 8 million rows, before memory allocation failure. I don't
remember
the exact number of millions. Of course the exact million depends
heavily with the result row width and with the Operating system memory
architecture.
So, it seems that the hack implementation has been partially removed,
but it is still active.
Regards,
Marko Ristola