> 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/