Problems setting shared_buffers to large value
Hi all,
I am running postgres 7.4.2 on a Dual processor Opteron with 16GB of ram. I
want to set shared_buffers to a large value, but I am running into startup
problems.
I have set my kernel SHMMAX and SHMALL to 12GB.
When I set shared_buffers to a value which puts the total shared memory
usage over 1GB, my postgres server fails to start. Unfortunatly, I also
cannot seem to get any logfile output out of my system (perhaps another
question).
Are there any hardcoded max values for shared_buffers? I noticed in the code
that a uint32 is used for the page size which would mean a 4GB max. This is
failing at much lower values.
Sorry that I do not have a logfile output. Perhaps someone could help me
turn my logfile on. I am passing -l logfile at startup, but my logfile
remains empty.
Thanks in advance
Barry
(barry@GeipelNet.com
Hello,
What operating system?
Sincerely,
Joshua D. Drake
Barry L. Geipel wrote:
-->
Hi all,
I am running postgres 7.4.2 on a Dual processor Opteron with 16GB of
ram. I want to set shared_buffers to a large value, but I am running
into startup problems.I have set my kernel SHMMAX and SHMALL to 12GB.
When I set shared_buffers to a value which puts the total shared
memory usage over 1GB, my postgres server fails to start.
Unfortunatly, I also cannot seem to get any logfile output out of my
system (perhaps another question).Are there any hardcoded max values for shared_buffers? I noticed in
the code that a uint32 is used for the page size which would mean a
4GB max. This is failing at much lower values.Sorry that I do not have a logfile output. Perhaps someone could help
me turn my logfile on. I am passing -l logfile at startup, but my
logfile remains empty.Thanks in advance
Barry
(barry@GeipelNet.com
--
Command Prompt, Inc., home of Mammoth PostgreSQL - S/ODBC and S/JDBC
Postgresql support, programming shared hosting and dedicated hosting.
+1-503-667-4564 - jd@commandprompt.com - http://www.commandprompt.com
PostgreSQL Replicator -- production quality replication for PostgreSQL
"Barry L. Geipel" <barry@GeipelNet.com> writes:
When I set shared_buffers to a value which puts the total shared memory
usage over 1GB, my postgres server fails to start.
You definitely can't set shared memory to more than 2GB because its
allocation arithmetic is done with ints. Not sure why it would fall
over at 1GB, but it's more or less irrelevant anyway, because there is
no earthly reason to make shared_buffers that high. You are much better
off leaving the kernel to manage the bulk of your RAM. I don't know of
any substantiated cases where it helped to make shared_buffers much
larger than order-of-magnitude-of-10000 (80MB). 1GB will certainly be
well past the point of diminishing returns.
You can find more about this in the pgsql-performance archives, I believe.
If not there, try older archives of the other lists.
Sorry that I do not have a logfile output. Perhaps someone could help me
turn my logfile on. I am passing -l logfile at startup, but my logfile
remains empty.
Passing -l logfile to what?
regards, tom lane