Re: Out of memory error on automatic vacuum

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

 



On Mon, Nov 18, 2019 at 03:46:03PM +0100, Ekaterina Amez wrote:

El 18/11/19 a las 15:16, Tomas Vondra escribió:

Not sure I understand. Whenever PostgreSQL process needs memory it
requests it from the kernel by calling malloc(), and the amount of
availabe RAM is limited.  So when kernel can't provide more memory,
it returns NULL.

Understood.


If it finished a couple of minutes before, it's unlikely to be the
related. But hard to say, without knowing the details.

Yeah, I thought the same but for me is too much coincidence and is suspicious (or at least a thing to have in mind).


No, that's just one of the memory contexts (they form a tree), using
only 1kB of memory. What matters is the "grand total"

Grand total: 1009356 bytes in 130 blocks; 436888 free (72 chunks);
572468 used

which is ~1MB.

OK, in my lack of knowledge I was understanding "memory context" as the whole message.


Another thing you might do is adding a swap (if you don't have one
already), as a safety.


Excuse my ignorance but... swap? You mean some mechanism that prevents server to be unavailable by having a second instance running but not accesible and changing from one to the other when the main fails? (It's the best way I find to describe it, as I don't usually speak/write english).


swap = space on disk, so that OS can page out unused data from RAM when
there's memory pressure

It's a basic sysadmin knowledge, I think. Search for mkswap.

regards

--
Tomas Vondra                  http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services





[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux