On 4/2/13 11:54 AM, Robert Haas wrote:
> But, having said that, I still think the best idea is what Andres
> proposed, which pretty much matches my own thoughts: the bgwriter
> needs to populate the free list, so that buffer allocations don't have
> to wait for linear scans of the buffer array.
I was hoping this one would make it to a full six years of being on the
TODO list before it came up again, missed it by a few weeks. The
funniest part is that Amit even submitted a patch on this theme a few
months ago without much feedback:
http://www.postgresql.org/message-id/6C0B27F7206C9E4CA54AE035729E9C382852FF97@szxeml509-mbs That stalled where a few
thingshave, on a) needing more regression
test workloads, and b) wondering just what the deal with large
shared_buffers setting degrading performance was.
I saw refactoring in this area as waiting behind it being easier to
experiment with adding new processes, but that barrier has fallen now.
Maybe it needs a new freelist process, maybe it doesn't, today the code
needed to try both is relatively cheap.
The other thing that always seemed to stop me was never having a typical
Linux system big enough to hit some of these problems available all the
time. What I did this week on that front was just go buy a 24 core
server with 64GB of RAM that lives in my house. I just need to keep it
two floors away if I want to sleep at night.
--
Greg Smith 2ndQuadrant US greg@2ndQuadrant.com Baltimore, MD
PostgreSQL Training, Services, and 24x7 Support www.2ndQuadrant.com