Re: Correcting freeze conflict horizon calculation
От | Peter Geoghegan |
---|---|
Тема | Re: Correcting freeze conflict horizon calculation |
Дата | |
Msg-id | CAH2-Wzm5GB2WazmttkmdSfj-Xb4yU2VeaxY1umoEf17dJVGLrQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Correcting freeze conflict horizon calculation (Melanie Plageman <melanieplageman@gmail.com>) |
Список | pgsql-hackers |
On Mon, Jun 2, 2025 at 3:30 PM Melanie Plageman <melanieplageman@gmail.com> wrote: > I understand that if I wanted to actually use the newest frozen xmin > as the conflict horizon when the page is not all-frozen, I'd need a > new counter since visibility_cutoff_xid is calculated across all live > tuples older than OldestXmin -- not just ones we'll freeze. The idea of always calculating precisely the oldest possible conflict horizon XID that is still safe when performing freezing seems reasonable to me. I'm certainly not opposed. > But, for cases when a few tuples are frozen on the page, it seems like it could > be worth it? In general, I don't expect that we're all that likely to freeze some tuples on the page, without being able to subsequently mark the whole page as all-frozen in the VM. Obviously it happens more often when VACUUM FREEZE is used -- though that works best as an argument against VACUUM FREEZE. A scheme like the one you're thinking of might be worth the implementation effort if it ended up being simpler. As you pointed out, we're already doing almost the same thing for pruning. Now that pruning and freezing both happen in the same place, it might make sense to do it just to make things more consistent. -- Peter Geoghegan
В списке pgsql-hackers по дате отправления: