About the shared buffers size configuration discussion:

Like a few others here, I've spent a sizable proportion of my career dealing with this issue (not with PG, with other products I've developed that had a similar in-memory page pool).

There are roughly six stages in understanding this problem:

Stage 1: "Just make it figure out how much memory the system has, and go use all of it". Stage 2: "Oh, oops, often that's too much. The process won't start or the system becomes unstable. Darn." Stage 3: "Ok, how about we make it use a big pile of the system's memory, but not so much that it won't start and the system won't become unstable". Stage 4: "Oh, there's no practical way to achieve #3 (e.g. the filesystem cache completes with your buffer space in unpredictable and unstable ways). Oops". Stage 5: "Ah...you know, using all the available memory isn't even necessarily the goal of the system's owner -- they may be running other applications that should be allowed to use most of the available memory". Stage 6: "Rats, without some kind of resource policy allocation mechanism built into the OS, this problem is intractable, let's try to document the issue as best we can and define a moderately sized default so nobody shoots their feet off. The filesystem cache does a reasonable job for most deployments anyway.".



--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to