Re: C# w/ ODBC, 2.1 million list select gives empty DataSet

From: Hiroshi Inoue <inoue(at)tpf(dot)co(dot)jp>
To: Laurent Chouinard <laurent(dot)chouinard(at)sem(dot)ca>
Cc: pgsql-odbc(at)postgresql(dot)org
Subject: Re: C# w/ ODBC, 2.1 million list select gives empty DataSet
Date: 2010-01-13 05:35:34
Message-ID: 4B4D5BA6.2060907@tpf.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Laurent Chouinard wrote:
> Hi everyone,
>
> I've been using the ODBC driver for Windows along with my C# (Framework
> 2.0) for a few years now and it's been working very nicely.
>
> Until now.
>
> One of my customer's database has grown to considerable size over time,
> and in particular, one report he attemps to do in my software gives an
> empty report.
>
> Upon investigation, I determined that the SELECT I send to the
> postgresql gets processed properly and it probably hands over about 2.1
> million rows as the response. After that, I use the "Fill" method as
> instructed in the "HOW TO" section in the ODBC documentation to fill the
> data into a DataSet object.
>
> After considerable amount of work (almost the same as when I do that
> same query in PgAdmin III, about 110 seconds), the DataSet gets
> initialized empty, with zero tables in it. No errors, no exceptions.
> Everything moves along as if nothing happened.
>
> I just upgraded to the latest ODBC drivers (dated december 2009) and
> it's not changing my issue.

Hmmm, 2.1 millions of rows are too many. Possibly "Out of memory
while reading tuples" error occurs but the driver forgets to handle
it in some cases. Please try the drivers on testing for 8.4.0201 at
http://www.geocities.jp/inocchichichi/psqlodbc/index.html .
You may be able to improve the memory usage by checking the "Use
Declare/Fetch" option.

regards,
Hiroshi Inoue

In response to

Browse pgsql-odbc by date

  From Date Subject
Next Message Hiroshi Inoue 2010-01-13 09:36:43 Re: unicode vs non-unicode ODBC driver
Previous Message Craig Ringer 2010-01-13 04:41:47 Re: C# w/ ODBC, 2.1 million list select gives empty DataSet