Re: Postgres shared memory error

From: Kevin Kempter <cs_dba(at)consistentstate(dot)com>
To: Fernando Hevia <fhevia(at)gmail(dot)com>
Cc: pgsql-admin(at)postgresql(dot)org
Subject: Re: Postgres shared memory error
Date: 2012-04-28 16:37:58
Message-ID: 4F9C1CE6.20803@consistentstate.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

On 04/28/2012 10:32 AM, Fernando Hevia wrote:
>
>
> On Sat, Apr 28, 2012 at 13:10, Kevin Kempter
> <cs_dba(at)consistentstate(dot)com <mailto:cs_dba(at)consistentstate(dot)com>> wrote:
>
> All;
>
> I just want to be sure that I'm not causing myself greif. I have
> a kvm in the cloud that is supposed to have access to 32GB of ram.
> when I do a top I only see 1GB of ram, I've pinged the hosting
> provider, maybe it shows up as it's used?
>
>
> What does the 'free' command show?
>
> Anyway when I try and start postgres I see this:
> /
> $ 2012-04-28 12:00:33 EDT [6429]: [1-1] FATAL: XX000: could not
> create shared memory segment: Cannot allocate memory
> 2012-04-28 12:00:33 EDT [6429]: [2-1] DETAIL: Failed system call
> was shmget(key=5432001, size=7700914176, 03600).
> 2012-04-28 12:00:33 EDT [6429]: [3-1] HINT: This error usually
> means that PostgreSQL's request for a shared memory segment
> exceeded available memory or swap space. To reduce the request
> size (currently 7700914176 bytes), reduce PostgreSQL's
> shared_buffers parameter (currently 917504) and/or its
> max_connections parameter (currently 503).
> The PostgreSQL documentation contains more information
> about shared memory configuration.
> 2012-04-28 12:00:33 EDT [6429]: [4-1] LOCATION:
> InternalIpcMemoryCreate, pg_shmem.c:178 /
>
>
> Which means I should bump up shmmax like this:
>
> /# sysctl -w kernel.shmmax=7700914176/
>
>
> and add it to /etc/sysctl.conf:
>
> /# tail /etc/sysctl.conf
> kernel.msgmax = 65536
>
> # Controls the maximum shared segment size, in bytes
> kernel.shmmax = 68719476736
>
> # Controls the maximum number of shared memory segments, in pages
> kernel.shmall = 4294967296
>
> #PostgreSQL
> kernel.shmmax = 7700914176 /
>
>
> I assume I should have to tweak ONLY kernel.shmmax, am I correct?
>
>
> Correct.
>
> I'm also assuming that this is a KVM cloud host provider issue,
> i.e. it looks like I actually do not have 32G or ram. Does anyone
> disagree with my conclusions?
>
>
> You haven't provided evidence on how much RAM your system sees. A free
> -m will show the total memory the system has and is being used.
> Regards.

Free command:

/ # free
total used free shared buffers cached
Mem: 1020856 946804 74052 0 61280 796004
-/+ buffers/cache: 89520 931336
Swap: 0 0 0/

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Andrew Barinov 2012-04-28 19:58:48 Re: Configuring pg on os x lion
Previous Message Fernando Hevia 2012-04-28 16:32:33 Re: Postgres shared memory error