Re: Display Pg buffer cache (WIP)
От | Mark Kirkwood |
---|---|
Тема | Re: Display Pg buffer cache (WIP) |
Дата | |
Msg-id | 4227AC2C.8010406@coretech.co.nz обсуждение исходный текст |
Ответ на | Re: Display Pg buffer cache (WIP) (Neil Conway <neilc@samurai.com>) |
Ответы |
Re: Display Pg buffer cache (WIP)
Re: Display Pg buffer cache (WIP) |
Список | pgsql-patches |
Neil Conway wrote: > > I don't like accessing shared data structures without acquiring the > appropriate locks; even if it doesn't break anything, it seems like just > asking for trouble. In order to be able to inspect a buffer's tag in > Tom's new locking scheme (not yet in HEAD, but will be in 8.1), you need > only hold a per-buffer lock. That will mean acquiring and releasing a > spinlock for each buffer, which isn't _too_ bad... > > I am looking at this bit now. I take the first part to mean that don't need to wrap LWLockAcquire(BufMgrLock, LW_EXCLUSIVE) ... LWLockRelease(BufMgrLock) around the inspection of the buffers (?) This per buffer lock, are we talking about LockBuffer(buf, BUFFER_LOCK_SHARE) ... releaseBuffer(buf) ? If so, it looks like I need to do some stuff with ResourceOwners, otherwise ReleaseBuffer will fail (or am I wandering up the wrong track here?). I am using anoncvs from yesterday, so if Tom's new scheme is *very* new I may be missing it. Thanks Mark
В списке pgsql-patches по дате отправления: