Search Postgresql Archives

Re: VACUUM FULL versus CLUSTER ON

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



At 10:50 AM 7/10/2006 -0500, Scott Marlowe wrote:

On Sat, 2006-07-08 at 10:20, Joshua D. Drake wrote:
> >
> > Unfortunately it would appear that I cannot vacuum full either as I get an
> > out of memory error:

Also, this kind of points out that you might not have enough swap
space.  On most database servers there's enough hard drive space laying
about to have as large a swap space as you'd like, and I can't count the
number of times a large swap has given me enough to time to catch
runaway processes and keep an ailing server up and running, albeit
hobbling along, rather than having to worry about running out of virtual
memory.

In my opinion, there is not enough real memory, or postgresql (or something else) is using more memory than it should.

Because I prefer the reverse - processes die rather than the entire server hobble along while your ssh connection attempts (or other arguably important stuff) keep timing out. Of course some O/Ses appear to randomly kill processes when out of memory. BTW, I regard any O/S that kills critical processes such as the disk syncing processes or swap, or "initd" in _typical_ out-of-memory scenarios as a product of shoddy workmanship.

I'd prefer just enough swap[1] that when maxed out the server is just slowed enough to be noticeable, rather than effectively dead and continuously "running" like a "drum memory" computer.

If a normal userland program cannot handle being killed because there is not enough memory, then I think something is wrong somewhere (e.g. the O/S is doing stuff like SIGKILLing postgresql, or postgresql is not handling SIGTERM properly).

Link.

[1] How much is enough? My guess is that the suitable size would be related to the random read/write throughput from/to the swap, and the largest worst case amount of memory that would have to be continuously read and written, and how long you would be willing to wait. If you have programs that allocate tons of memory but don't ever actually use the full amount, you can adjust your swap accordingly.





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux