On Fri, Feb 09, 2007 at 07:31:33PM +0900, Takayuki Tsunakawa wrote: > 1. PostgreSQL tries to read data from disk into database cache. > 2. The kernel tries to allocate filesystem buffers by paging out > PostgreSQL's memory (possibly shared buffers). > 3. PostgreSQL finds data requested by its clients in database cache, > and tries to get it in memory. > 4. But the shared buffers are paged out, and page-ins happen.
One of the biggest issues with large shared memory segments is that we can't be sure they'll actually stay in memory. So your shared memory block should not be too much larger than your working set. So yes, if you make a really large segment, the problem you describe may happen. Have a nice day, -- Martijn van Oosterhout <email@example.com> http://svana.org/kleptog/ > From each according to his ability. To each according to his ability to > litigate.
Description: Digital signature