Thread: [ADMIN] Cannot allocate greater than 28 Meg of shared

[ADMIN] Cannot allocate greater than 28 Meg of shared

From
Vuthichai Ampornaramveth
Date:
Seem that you hit the maximum limit of Linux kernel
(32 Mbyte shared memory). See the file

/usr/src/linux/include/asm-i386/shmparam.h

then edit the constant "SHMMAX" and rebuild your
kernel.

Hui :)

-----------
I have the new Postgres 6.4 installed. My system has 256 Meg of RAM with
512 Meg of swap space (PII/400 MHz; RH Linux 5.1). I am trying to
maximize the number of shared memory buffers for the postmaster. It
seems that if I get over 28 megs (-B3500), that the postmaster won't
run:


 nohup postmaster -i -B4000 > regress.log &
[1] 737
[postgres@bigred ~]$ IpcMemoryCreate: shmget failed (Invalid argument)
key=5432001, size=33719840, permission=600
FATAL 1:  ShmemCreate: cannot create region


I think that with 256 Meg of RAM that I should be able to extend that
shared buffer size even further. Is this a limitation of Postgres or is
this just that my system only has 28 meg to spare? (Or am I doing
something wrong).

Thanks.
-Tony



------------------------------------------------------------
Vuthichai Ampornaramveth      <vuthi@venus.dtinet.or.jp>
Tokyo Institute of Technology  <vuthi@ctrl.titech.ac.jp>
http://thaigate.nacsis.ac.jp/


Re: [ADMIN] Cannot allocate greater than 28 Meg of shared

From
"G. Anthony Reina"
Date:
Thanks Hui,

    SHMMAX was set to 0x2000000 in that .h file. So it looks as though the
system wasn't allowing anything to allocated more than 32 meg of shared
memory (as I found out with the -B option on the postmaster). I haven't
had a chance to go through re-building the kernel. Our IT guy here says
that it is a little involved on Red Hat so I'll hold off for a while
until I have the time.

-Tony