Обсуждение: fatal ERROR running simple join query...

Поиск
Список
Период
Сортировка

fatal ERROR running simple join query...

От
"Ligia Pimentel"
Дата:
I have a problem with postgres, I'm running a query that joins two tables,
one with 129000+ records, and the other with 1172 records, it's a very
simple join.  But postgres can't handle it!!! (Both tables have an index on
the  field "cuentacb").

I get the following error after 3 minutes...

migracion=# select * from cuentasequivalentes, equiv11mayo m
migracion-# where cuentasequivalentes.cuentacb = m.cuentacb
migracion-# and cuentasequivalentes.cuentabr <> m.cuentabr;
FATAL 1:  Memory exhausted in AllocSetAlloc()
pqReadData() -- backend closed the channel unexpectedly.       This probably means the backend terminated abnormally
  before or while processing the request.
 
The connection to the server was lost. Attempting reset: Succeeded.

What can I do? I'm guessing that I could change a configuration parameter or
something like that, but I don't know.

Please help me, it's kind of urgent.


Ligia





Re: fatal ERROR running simple join query...

От
Martín Marqués
Дата:
Quoting Ligia Pimentel <lmpimentel@yahoo.com>:

> 
> I have a problem with postgres, I'm running a query that joins two tables,
> one with 129000+ records, and the other with 1172 records, it's a very
> simple join.  But postgres can't handle it!!! (Both tables have an index on
> the  field "cuentacb").
> 
> I get the following error after 3 minutes...
> 
> migracion=# select * from cuentasequivalentes, equiv11mayo m
> migracion-# where cuentasequivalentes.cuentacb = m.cuentacb
> migracion-# and cuentasequivalentes.cuentabr <> m.cuentabr;
> FATAL 1:  Memory exhausted in AllocSetAlloc()
> pqReadData() -- backend closed the channel unexpectedly.
>         This probably means the backend terminated abnormally
>         before or while processing the request.
> The connection to the server was lost. Attempting reset: Succeeded.

First you should run VACUUM analyze on that database, or at least on those 2
tables. Check with EXPLAIN to see how much better the queries get after the
analyze.

> What can I do? I'm guessing that I could change a configuration parameter
> or
> something like that, but I don't know.

There are so many parameters to change, that I have to tell you to go and see
the "PostgreSQL 7.1 Administrator's Guide".

Saludos... :-)

-- 
El mejor sistema operativo es aquel que te da de comer.
Cuida tu dieta.
-----------------------------------------------------------------
Martin Marques                  |        mmarques@unl.edu.ar
Programador, Administrador      |       Centro de Telematica                      Universidad Nacional
        del Litoral
 
-----------------------------------------------------------------


Re: fatal ERROR running simple join query...

От
"Ligia Pimentel"
Дата:
It didn't work. I checked the tables (both) and found nothing wrong.
Finally I received an e-mail from Tom Lane suggesting that I upgraded to
Postgres 7.1, wich I did. After the upgrade, everything worked just fine.
Thank you.

Ligia
"Mart�n Marqu�s" <martin@bugs.unl.edu.ar> wrote in message
news:989853716.3afff814ad799@bugs.unl.edu.ar...
> Quoting Ligia Pimentel <lmpimentel@yahoo.com>:
>
> >
> > I have a problem with postgres, I'm running a query that joins two
tables,
> > one with 129000+ records, and the other with 1172 records, it's a very
> > simple join.  But postgres can't handle it!!! (Both tables have an index
on
> > the  field "cuentacb").
> >
> > I get the following error after 3 minutes...
> >
> > migracion=# select * from cuentasequivalentes, equiv11mayo m
> > migracion-# where cuentasequivalentes.cuentacb = m.cuentacb
> > migracion-# and cuentasequivalentes.cuentabr <> m.cuentabr;
> > FATAL 1:  Memory exhausted in AllocSetAlloc()
> > pqReadData() -- backend closed the channel unexpectedly.
> >         This probably means the backend terminated abnormally
> >         before or while processing the request.
> > The connection to the server was lost. Attempting reset: Succeeded.
>
> First you should run VACUUM analyze on that database, or at least on those
2
> tables. Check with EXPLAIN to see how much better the queries get after
the
> analyze.
>
> > What can I do? I'm guessing that I could change a configuration
parameter
> > or
> > something like that, but I don't know.
>
> There are so many parameters to change, that I have to tell you to go and
see
> the "PostgreSQL 7.1 Administrator's Guide".
>
> Saludos... :-)
>
> --
> El mejor sistema operativo es aquel que te da de comer.
> Cuida tu dieta.
> -----------------------------------------------------------------
> Martin Marques                  |        mmarques@unl.edu.ar
> Programador, Administrador      |       Centro de Telematica
>                        Universidad Nacional
>                             del Litoral
> -----------------------------------------------------------------
>
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/users-lounge/docs/faq.html