pg.ddx.io  pgsql-admin@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Kevin Kempter <cs_dba@consistentstate.com>
To: Fernando Hevia <fhevia@gmail.com>
Cc: pgsql-admin@postgresql.org
Subject: Re: Postgres shared memory error
Date: Sat, 28 Apr 2012 10:37:58 -0600
Message-ID: <4F9C1CE6.20803@consistentstate.com> (raw)
In-Reply-To: <CAGYT1XQT5SvL93CJcY2+LVNZS0bTQtxzNzQ3q869BhA-KNyVSQ@mail.gmail.com>
References: <4F9C1659.5070503@consistentstate.com>
	<CAGYT1XQT5SvL93CJcY2+LVNZS0bTQtxzNzQ3q869BhA-KNyVSQ@mail.gmail.com>

On 04/28/2012 10:32 AM, Fernando Hevia wrote:
>
>
> On Sat, Apr 28, 2012 at 13:10, Kevin Kempter 
> <cs_dba@consistentstate.com <mailto:cs_dba@consistentstate.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/

view thread (4+ messages)  latest in thread

Message-ID: <4F9C1CE6.20803@consistentstate.com>
Permalink:  ../4F9C1CE6.20803@consistentstate.com/
Also on:    postgresql.org/message-id/4F9C1CE6.20803@consistentstate.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-admin@postgresql.org
  Cc: cs_dba@consistentstate.com, fhevia@gmail.com
  Subject: Re: Postgres shared memory error
  In-Reply-To: <4F9C1CE6.20803@consistentstate.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox