Tom Lane wrote: > Gregory Stark <[EMAIL PROTECTED]> writes: > > Is there a reason UnpinBuffer has to be the one to increment the usage count > > anyways? Why can't ReadBuffer handle incrementing the count and just trust > > that it won't be decremented until the buffer is unpinned anyways? > > That's a good question. I think the idea was that if we hold a buffer > pinned for awhile (long enough that the bgwriter's clock sweep passes > over it one or more times), we want the usage count decrementing to > start when we release the pin, not when we acquire it. But maybe that > could be fixed if the clock sweep doesn't touch the usage_count of a > pinned buffer. Which in fact it may not do already --- didn't look.
It does -- in BgBufferSync the "all" scan calls SyncOneBuffer with skip_pinned=false. The "lru" scan does skip pinned buffers. -- Alvaro Herrera Developer, http://www.PostgreSQL.org/ "World domination is proceeding according to plan" (Andrew Morton) ---------------------------(end of broadcast)--------------------------- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate
