Issue with SHMALL parameter
Hi,
I'm using postgresql 9.1 as my database server on a linux server that has 8 GB of RAM.
After I changed the shared_buffers parameter to 2GB, I get the following error when I try to start postgres:
FATAL: could not create shared memory segment: Cannot allocate memoryDETAIL: Failed system call was shmget(key=5432001, size=2221539328, 03600).
Here are the shmall and the shmax params of my server:
#cat /proc/sys/kernel/shmmax 68719476736
#cat /proc/sys/kernel/shmall 4294967296
So as you see, shmall is greater than the requested size by postgres. Anyone have and idea?
thank you
data tanger <datatanger@hotmail.fr> writes:
Here are the shmall and the shmax params of my server:
#cat /proc/sys/kernel/shmmax 68719476736
#cat /proc/sys/kernel/shmall 4294967296
SHMALL is measured in pages not bytes on Linux. I wonder if that value
is too large and is causing an internal integer overflow in the kernel.
regards, tom lane
Thank you for your answer. I think the value of shmall I have is very common cause I've seen it many times in other servers.Do you think there maybe a link between the request size of postgres and the swap size?
Here is the output of free -m
free -m total used free shared buffers cachedMem: 7867 1860 6007 0 5 595-/+ buffers/cache: 1258 6609Swap: 1023 2 1021
Regards,
Show quoted text
From: tgl@sss.pgh.pa.us
To: datatanger@hotmail.fr
CC: pgsql-docs@postgresql.org
Subject: Re: [DOCS] Issue with SHMALL parameter
Date: Tue, 18 Sep 2012 12:07:46 -0400data tanger <datatanger@hotmail.fr> writes:
Here are the shmall and the shmax params of my server:
#cat /proc/sys/kernel/shmmax 68719476736
#cat /proc/sys/kernel/shmall 4294967296SHMALL is measured in pages not bytes on Linux. I wonder if that value
is too large and is causing an internal integer overflow in the kernel.regards, tom lane