Re: Bug: Buffer cache is not scan resistant
От | Florian G. Pflug |
---|---|
Тема | Re: Bug: Buffer cache is not scan resistant |
Дата | |
Msg-id | 45ECADA7.1050605@phlo.org обсуждение исходный текст |
Ответ на | Re: Bug: Buffer cache is not scan resistant ("Simon Riggs" <simon@2ndquadrant.com>) |
Ответы |
Re: Bug: Buffer cache is not scan resistant
|
Список | pgsql-hackers |
Simon Riggs wrote: > On Mon, 2007-03-05 at 14:41 -0500, Tom Lane wrote: >> "Simon Riggs" <simon@2ndquadrant.com> writes: >>> Itakgaki-san and I were discussing in January the idea of cache-looping, >>> whereby a process begins to reuse its own buffers in a ring of ~32 >>> buffers. When we cycle back round, if usage_count==1 then we assume that >>> we can reuse that buffer. This avoids cache swamping for read and write >>> workloads, plus avoids too-frequent WAL writing for VACUUM. >>> This would maintain the beneficial behaviour for OLTP, >> Justify that claim. It sounds to me like this would act very nearly the >> same as having shared_buffers == 32 ... > > Sure. We wouldn't set the hint for IndexScans or Inserts, only for > SeqScans, VACUUM and COPY. > > So OLTP-only workloads would be entirely unaffected. In the presence of > a mixed workload the scan tasks would have only a limited effect on the > cache, maintaining performance for the response time critical tasks. So > its an OLTP benefit because of cache protection and WAL-flush reduction > during VACUUM. > > As we've seen, the scan tasks look like they'll go faster with this. But it would break the idea of letting a second seqscan follow in the first's hot cache trail, no? greetings, Florian Pflug
В списке pgsql-hackers по дате отправления: