Received: from maia.hub.org (maia-1.hub.org [200.46.208.211]) by mail.postgresql.org (Postfix) with ESMTP id BF9D6632D85 for ; Tue, 11 May 2010 17:42:00 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.208.211]) (amavisd-maia, port 10024) with ESMTP id 46045-07 for ; Tue, 11 May 2010 20:41:39 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from glacier.frostconsultingllc.com (glacier.frostconsultingllc.com [69.36.227.170]) by mail.postgresql.org (Postfix) with ESMTP id B7B20632D84 for ; Tue, 11 May 2010 17:41:52 -0300 (ADT) Received: from dsl081-245-111.sfo1.dsl.speakeasy.net ([64.81.245.111] helo=Sidney-Stratton.local) by glacier.frostconsultingllc.com with esmtpsa (TLSv1:CAMELLIA256-SHA:256) (Exim 4.69) (envelope-from ) id 1OBwGx-0006s4-4p for pgsql-docs@postgreSQL.org; Tue, 11 May 2010 13:41:50 -0700 Message-ID: <4BE9C10A.4040807@agliodbs.com> Date: Tue, 11 May 2010 13:41:46 -0700 From: Josh Berkus User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b3pre) Gecko/20090223 Thunderbird/3.0b2 MIME-Version: 1.0 To: pgsql-docs@postgreSQL.org Subject: Change to kernel-resources Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-1.9 tagged_above=-5 required=5 tests=BAYES_00=-1.9 X-Spam-Level: X-Archive-Number: 201005/7 X-Sequence-Number: 5504 All, Our Solaris section is out of date. We should change it to: =================== Solaris 2.6 to 2.9 (Solaris 6 to Solaris 9) The default maximum size of a shared memory segment is too low for PostgreSQL. The relevant settings can be changed in /etc/system, for example: set shmsys:shminfo_shmmax=0x2000000 set shmsys:shminfo_shmmin=1 set shmsys:shminfo_shmmni=256 set shmsys:shminfo_shmseg=256 set semsys:seminfo_semmap=256 set semsys:seminfo_semmni=512 set semsys:seminfo_semmns=512 set semsys:seminfo_semmsl=32 You need to reboot for the changes to take effect. See also http://sunsite.uakom.sk/sunworldonline/swol-09-1997/swol-09-insidesolaris.html for information on shared memory under Solaris. Solaris 2.10 (Solaris 10) and OpenSolaris In Solaris 10 and OpenSolaris, the default shared memory and semaphore settings are good enough for most PostgreSQL applications. Solaris now defaults to a SHMMAX of 1/4 of system RAM. If you need to increase this in order to set shared memory settings slightly higher, you should use a project setting associated with the "postgres" user. For example, run the following as root: projadd -c "PostgreSQL DB User" -K "project.max-shm-memory=(privileged,8GB,deny)" -U postgres -G postgres user.postgres This command adds the user.postgres project and raises the shared memory maximum for the "postgres" user to 8GB, and takes effect the next time that user logs in. The above assumes that there isn't already a project 101, and that postgresql is run by the postgres user in the postgres group. No reboot is required. Other recommended kernel setting changes for database servers which will have a large number of connections are: project.max-shm-ids=(priv,32768,deny) project.max-sem-ids=(priv,4096,deny) project.max-msg-ids=(priv,4096,deny) Additionally, if you are running PostgreSQL inside a zone, you may need to raise the zone resource usage limits as well. See "Chapter2: Projects and Tasks" in the Solaris 10 System Administrator's Guide for more information on projects and prctl. ================ (and no, there's no reusable link to the solaris docs) -- -- Josh Berkus PostgreSQL Experts Inc. http://www.pgexperts.com