Re: BUG #10533: 9.4 beta1 assertion failure in autovacuum process
От | Andres Freund |
---|---|
Тема | Re: BUG #10533: 9.4 beta1 assertion failure in autovacuum process |
Дата | |
Msg-id | 20140609124616.GC3149@alap3.anarazel.de обсуждение исходный текст |
Ответ на | Re: BUG #10533: 9.4 beta1 assertion failure in autovacuum process (Andres Freund <andres@2ndquadrant.com>) |
Ответы |
Re: BUG #10533: 9.4 beta1 assertion failure in autovacuum
process
|
Список | pgsql-bugs |
On 2014-06-05 23:34:36 +0200, Andres Freund wrote: > Hi, > > On 2014-06-05 21:42:23 +0300, Heikki Linnakangas wrote: > > I think we'll need a variant of GetMultiXactIdMembers() that only returns > > the update XID, avoiding the palloc(). The straight-forward fix would be to > > copy-paste contents of GetMultiXactIdMembers() into > > MultiXactIdGetUpdateXid(), and instead of returning the members in an array, > > only return the update-xid. But it's a long and complicated function, so > > copy-pasting is not a good option. I think it needs to be refactored into > > some kind of a helper function that both MultiXactIdGetUpdateXid() and > > GetMultiXactIdMembers() could call. > > While it certainly would be nice to have such a function I have my doubt > it's realistic to get it for 9.4 and the backbranches. > > I haven't thought particularly much about this, but I don't really see > why the heap_page_is_all_visible() bit needs to be in a critical > section? Can't we just do that entire bit after the log_heap_clean()? > Then the heap_page_is_all_visible() can be done outside a critical > section. Before I start working on a patch along those lines, do you see any problems with making the critical section smaller? Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
В списке pgsql-bugs по дате отправления: