Re: Page replacement algorithm in buffer cache
От | Tom Lane |
---|---|
Тема | Re: Page replacement algorithm in buffer cache |
Дата | |
Msg-id | 487.1364069262@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: Page replacement algorithm in buffer cache (Jeff Janes <jeff.janes@gmail.com>) |
Список | pgsql-hackers |
Jeff Janes <jeff.janes@gmail.com> writes: > I'm more convinced in the other direction, new pages should enter with 0 > rather than with 1. I think that the argument that a new buffer needs to > be given more of an opportunity to get used again is mostly bogus. IIRC, the argument for starting at 1 not 0 is that otherwise a new page might have an infinitesmally small lifespan, if the clock sweep should reach it just after it gets entered into the buffers. By starting at 1, the uncertainty in a new page's lifespan runs from 1 to 2 sweep times not 0 to 1 sweep time. I think though that this argument only holds water if the buffer didn't get found via the clock sweep to start with --- otherwise, it ought to have just about one clock sweep of time before the sweep comes back to it. It does apply to buffers coming off the freelist, though. Thus, if we were to get rid of the freelist then maybe we could change the starting usage_count ... but whether that's a good idea in itself is pretty uncertain. regards, tom lane
В списке pgsql-hackers по дате отправления: