Re: Out of memory error during updating huge table - Mailing list pgsql-general

From Tom Lane
Subject Re: Out of memory error during updating huge table
Date
Msg-id 782.1139705013@sss.pgh.pa.us
Whole thread Raw
In response to Out of memory error during updating huge table  (Gabor Siklos <siklosg@yahoo.com>)
List pgsql-general
Gabor Siklos <siklosg@yahoo.com> writes:
> I'm trying to update a table in transaction mode with
> 300 million records in it, and I'm getting an out of
> memory error.

The update per se shouldn't be a problem, but if you have AFTER ROW
triggers on the table then the list of pending trigger events could
be a problem.  Foreign key constraints, in particular, use AFTER
triggers.

> In transaction mode, I first delete all the records in
> the table and then try to use COPY to populate it
> again with the new data from a file. The out of memory
> error happens during the COPY.

If the problem is coming from an FK constraint, you might consider
dropping the constraint and then re-adding it after the COPY.  This'd
probably be faster than checking the rows "retail", too.

            regards, tom lane

pgsql-general by date:

Previous
From: David Fetter
Date:
Subject: Re: Each foo must have a bar
Next
From: Michael Glaesemann
Date:
Subject: Re: Each foo must have a bar