Re: Hung Vacuum in 8.3
От | Mark Kirkwood |
---|---|
Тема | Re: Hung Vacuum in 8.3 |
Дата | |
Msg-id | 4D64288D.4080402@catalyst.net.nz обсуждение исходный текст |
Ответ на | Re: Hung Vacuum in 8.3 (Robert Haas <robertmhaas@gmail.com>) |
Список | pgsql-bugs |
On 23/02/11 03:27, Robert Haas wrote: > On Tue, Feb 22, 2011 at 6:26 AM, Greg Stark<gsstark@mit.edu> wrote: >> Actually it's not waiting for the LockBuffer LWLock. it's waiting >> until your query unpins the buffer it wants. Vacuum tries to get an >> exclusive lock on the buffer, if it gets it then it checks if anyone >> is using that buffer. If someone is then it unlocks the buffer and >> waits until nobody has it pinned. > How bad it would be if we made LockBufferForCleanup() not wait? If we > can't obtain the buffer cleanup lock immediately, we just skip that > page and continue on. That would prevent us from updating > relfrozenxid, I guess, but we already can't do that if there are any > bits set in the visibility map. It could also leave some bloat in > the table, but probably not much (he says hopefully). > Seems like a good suggestion, and may leave less bloat than having the vacuum hung for potentially quite some time. Mark
В списке pgsql-bugs по дате отправления: