Robert Haas <robertmh...@gmail.com> wrote: > On Thu, Sep 4, 2014 at 7:25 AM, Amit Kapila <amit.kapil...@gmail.com> wrote: >> Its not difficult to handle such cases, but it can have downside also >> for the cases where demand from backends is not high. >> Consider in above case if instead of 500 more allocations, it just >> does 5 more allocations, then bgreclaimer will again have to go through >> the list and move 5 buffers and same can happen again by the time >> it moves 5 buffers. > > That's exactly the scenario in which we *want* the looping behavior. > If that's happening, then it means it's taking us exactly as long to > find 5 buffers as it takes the rest of the system to use 5 buffers. > We need to run continuously to keep up.
That's what I was thinking, as long as there isn't a lot of overhead to starting and finishing a cycle. If there is, my inclination would be to try to fix that rather than to sleep and hope things don't get out of hand before it wakes up again. -- Kevin Grittner EDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers