Re: Hung Vacuum in 8.3
От | Robert Haas |
---|---|
Тема | Re: Hung Vacuum in 8.3 |
Дата | |
Msg-id | AANLkTik6cN+Ku86LU-p1yGAOfTDn_e=vuy6d=D7cjaoA@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Hung Vacuum in 8.3 (Greg Stark <gsstark@mit.edu>) |
Ответы |
Re: Hung Vacuum in 8.3
|
Список | pgsql-bugs |
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). -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-bugs по дате отправления: