Re: VACUUM and spoiling the buffer manager cache
От | Simon Riggs |
---|---|
Тема | Re: VACUUM and spoiling the buffer manager cache |
Дата | |
Msg-id | 1172680202.3760.1009.camel@silverbirch.site обсуждение исходный текст |
Ответ на | Re: VACUUM and spoiling the buffer manager cache (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: VACUUM and spoiling the buffer manager cache
|
Список | pgsql-hackers |
On Wed, 2007-02-28 at 11:09 -0500, Tom Lane wrote: > "Simon Riggs" <simon@2ndquadrant.com> writes: > > VACUUM's current behaviour is to take blocks it has touched and place > > them on the head of the freelist, allowing them to be reused. > > No, it puts them at the tail of the freelist. That's a minor point because the freelist is mostly empty, so head == tail in 99.9% of cases. The freelist does start full, but we only *put* things on the freelist when we call InvalidateBuffer() after a DROP TABLE etc, or when we finish with a VACUUM buffer. So after the first few minutes of server operation we hardly ever use the freelist and so will be empty when we start dropping VACUUM'd buffers on it, head or tail. The negative effect on response times and overall performance is clearly noticeable in tests. -- Simon Riggs EnterpriseDB http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: