Re: Idea for getting rid of VACUUM FREEZE on cold pages
От | Jan Wieck |
---|---|
Тема | Re: Idea for getting rid of VACUUM FREEZE on cold pages |
Дата | |
Msg-id | 4BF87C49.3020008@Yahoo.com обсуждение исходный текст |
Ответ на | Re: Idea for getting rid of VACUUM FREEZE on cold pages (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-hackers |
On 5/22/2010 9:16 PM, Tom Lane wrote: > Josh Berkus <josh@agliodbs.com> writes: >>> Somebody (I think Joe or Heikki) poked a big hole in this last night at >>> the Royal Oak. Although the scheme would get rid of the need to replace >>> old XIDs with FrozenXid, it does not get rid of the need to set hint >>> bits before you can truncate CLOG. So in your example of an insert-only >>> table that's probably never read again, there's still a minimum of one >>> update visit required on every old page. Now that's still better than >>> two update visits ... but we could manage that already, just by tweaking >>> vacuum's heuristics about when to freeze vs when to set hint bits. > >> Yeah, someone pointed that out to me too and suggested that a freeze map >> was the better solution. I still think there's something we can do with >> pages on the visibility map but I'll have to think about it some more. > > It occurred to me on the flight home that maybe we could salvage > something from this if there were some mechanism that caused hint bits > to get set before the page got written out from shared buffers the first > time. This assumes that you have enough slack in shared-buffer space > that the transactions that touched a particular page all commit or abort > before the page first gets flushed to disk. At least the background writer should have a few spare cycles to look over a "to be flushed" page before writing it. Jan -- Anyone who trades liberty for security deserves neither liberty nor security. -- Benjamin Franklin
В списке pgsql-hackers по дате отправления: