On Fri, 9 Mar 2007, ITAGAKI Takahiro wrote:

"Pinned" means bufHdr->refcount > 0 and you don't distinguish pinned or recently-used (bufHdr->usage_count > 0) buffers in your patch.

Thank you, I will revise the terminology used accordingly. I was using "pinned" as a shortcut for "will be ignored by skip_pinned" which was sloppy of me. As I said, I was trying to show how the buffer cache looks from the perspective of the background writer, and therefore lumping them together because that's how SyncOneBuffer views them. A buffer cache full of either type will be largely ignored by the LRU writer, and that's what I've been finding when running insert/update heavy workloads like pgbench.

If I might suggest a terminology change to avoid this confusion in the future, I'd like to rename the SyncOneBuffer "skip_pinned" parameter to something like "skip_active", which is closer to the real behavior. I know Oracle refers to these as "hot" and "cold" LRU entries.

--
* Greg Smith [EMAIL PROTECTED] http://www.gregsmith.com Baltimore, MD

---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
      subscribe-nomail command to [EMAIL PROTECTED] so that your
      message can get through to the mailing list cleanly

Reply via email to