PostgreSQL buffer memory causes installation to fail

When installing PE on machines with large amounts of RAM, the PostgreSQL database might try to use more shared buffer memory than is available.

If this issue is present, the pgstartup.log (located at /var/log/pe-postgresql/pgstartup.log) contains the following error:

FATAL: could not create shared memory segment: No space left on device
DETAIL: Failed system call was shmget(key=5432001, size=34427584512,03600).

  1. On the primary server, set the shmmax kernel setting to approximately 50% of the total RAM.
  2. To get the value for the shmall kernel setting, divide the value of the shmmax setting by the page size. To confirm the page size, run: getconf PAGE_SIZE
  3. Set the new kernel settings by running:
    sysctl -w kernel.shmmax=<your shmmax calculation>
    sysctl -w kernel.shmall=<your shmall calculation>