Re: Error in VACUUM FULL VERBOSE ANALYZE (not enough memory) - Mailing list pgsql-performance

From Tom Lane
Subject Re: Error in VACUUM FULL VERBOSE ANALYZE (not enough memory)
Date
Msg-id 22121.1103312817@sss.pgh.pa.us
Whole thread Raw
In response to Re: Error in VACUUM FULL VERBOSE ANALYZE (not enough memory)  (Josh Berkus <josh@agliodbs.com>)
Responses Re: Error in VACUUM FULL VERBOSE ANALYZE (not enough memory)  (Josh Berkus <josh@agliodbs.com>)
Re: Error in VACUUM FULL VERBOSE ANALYZE (not enough memory)  (Bruno Wolff III <bruno@wolff.to>)
List pgsql-performance
Josh Berkus <josh@agliodbs.com> writes:
> Jean-Gerard,
>> When backend hits the tsearch2 index, SIZE/RES grows until it reachs
>> 1GB, where I got the error.
>> PID    UID   PRI NICE  SIZE   RES STATE WAIT     TIME    CPU COMMAND
>> 20461    503    -5    0  765M  824M sleep biowai   4:26 33.20% postgres

> OK, next thing to try is upgrading to 7.4.7.   Since you have 7.4.2, this
> should be a straightforward binary replacement.

This looks like it must be a memory leak in the gist indexing code
(either gist itself or tsearch2).  I don't see any post-release fixes in
the 7.4 branch that look like they fixed any such thing :-(, so it's
probably still there in 7.4.7, and likely 8.0 too.

Jean-Gerard, can you put together a self-contained test case?  I suspect
it need only look like "put some data in a table, make a tsearch2 index,
delete half the rows in the table, VACUUM FULL".  But I don't have time
to try to cons up a test case right now, and especially not to figure
out what to do to duplicate your problem if it doesn't happen on the
first try.

            regards, tom lane

pgsql-performance by date:

Previous
From: "Mike G."
Date:
Subject: Which is more efficient?
Next
From: Josh Berkus
Date:
Subject: Re: Error in VACUUM FULL VERBOSE ANALYZE (not enough memory)