> The box has 8G of RAM and 10G swap space available to it (almost none of
> which touched). The problem was that the VACUUM FULL process never
> released any memory. With maintenance work mem set to 512MB, I would
> think that it would be enforced such that any given connection would
> only be allowed 512MB for maintenance. Why it it growing beyond the 1.5G
> I allow system-wide for any given process eludes me right now (and why I
> suspect a bad memory leak).

My understanding is that the maintenance_work_mem is the amount of RAM
that can be used before PostgreSQL swaps out to disk. This is not the amount
of memory that vacuum full will use. Vacuum full is going to use whatever it 
needs to get the job done, and on the table your dealing with, its going to 
be alot.

> As per the other suggestions, I will end up doing a pg_dump/restore to
> reclaim the lost space.

You already know my opinion on that ;)

Sincerely,

Joshua D. Drake



>
> Sven

-- 
   === The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240
   Providing the most comprehensive  PostgreSQL solutions since 1997
             http://www.commandprompt.com/



---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

               http://archives.postgresql.org

Reply via email to