[Users] PostgreSQL can't allocate shared memory

Gregor Mosheh gregor at hostgis.com
Mon Apr 16 09:57:56 EDT 2007


>> And the HN's kernel.shmmax is set to 1 GB. (Is that relevant in a VE?)
> check the same in VE please.
> AFAICS, by default kernel sets:
> #define SHMMAX 0x2000000
> which is 32Mb.
> So you have to increase it in VE /etc/sysctl.conf file or in /proc.

Ahhh, very tricky -- in that it's exactly what one should expect! Thanks,
Kirill; I can't believe that this escaped me. I had thought that the VE
would have shmmax set by the UBC; evidently it's the case that each VE
gets their own set of sysctls for perfectly ordinary use.

So, let me summarize the shared memory situation for VEs:

* The HN's kernel.shmmax sets an absolute limit on shared memory,
  for both the HN and any VEs.
* A VE's shmpages sets the limit on shared memory for that VE.
  Therefore it must be <= kernel.shmmax
* Then the VE uses sysctl kernel.shmmax to set their allowable limit,
  which of course must be <= the VE's shmpages.

Sound right?


-- 
HostGIS
Cartographic development and hosting services
707-822-9355
http://www.HostGIS.com/

"Remember that no one cares if you can back up, only if you can restore."
- AMANDA



More information about the Users mailing list