Re: Unhandled exception in PGAdmin when opening 16-million-record table

From: Peter Geoghegan <peter(dot)geoghegan86(at)gmail(dot)com>
To: Rob Richardson <Rob(dot)Richardson(at)rad-con(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Unhandled exception in PGAdmin when opening 16-million-record table
Date: 2010-10-30 01:37:44
Message-ID: AANLkTinzfss-xO231SztkETzJAW1NhkyzDJpq1WqEm7M@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 29 October 2010 21:52, Rob Richardson <Rob(dot)Richardson(at)rad-con(dot)com> wrote:
> A customer was reviewing the database that supports the application we have
> provided.  One of the tables is very simple, but has over 16 million
> records.  Here is the table's definition:
>
> CREATE TABLE feedback
> (
>   charge integer,
>   elapsed_time integer, -- number of elapsed minutes since data began
> recording
>   tag_type character varying(24), -- Description of tag being recorded
>   tag_value real, -- value of tag being recorded
>   status smallint, -- PLC Status, recorded with Control PV only
>   stack integer, -- Not used
>   heating smallint DEFAULT 0, -- 1 for heating, 0 for cooling
>   cooling smallint DEFAULT 0 -- not used
> )
>
> As you see, there is no primary key.  There is a single index, as follows:
>
> CREATE INDEX feedback_charge_idx
>   ON feedback
>   USING btree
>   (charge);
> In PGAdmin, the customer selected this table and clicked the grid on the
> toolbar, asking for all of the records in the table.  After twenty minutes,
> a message box appeared saying that an unhandled exception had happened.
> There was no explanation of what the exception was.  The database log does
> not contain any information about it.  The PGAdmin display did show a number
> of records, leading me to believe that the error happened in PGAdmin rather
> than anywhere in PostGres.
>
> Can anyone explain what is happening?

Does WxWidgets/PgAdmin provide an overload of global operator new()
that follows the pre-standard C++ behaviour of returning a null ptr,
ala malloc()? C++ application frameworks that eschew exceptions often
do. This sounds like an unhandled std::bad_alloc exception.

Why don't we have some hard limit on the number of rows viewable in a
table? Would that really be so terrible?

--
Regards,
Peter Geoghegan

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message RP Khare 2010-10-30 06:56:04 Which variant to choose?
Previous Message Adrian Klaver 2010-10-30 00:29:36 Re: Paradox to postgresql interface