Re: HOT updates in index-less tables
От | Robert Haas |
---|---|
Тема | Re: HOT updates in index-less tables |
Дата | |
Msg-id | AANLkTin=pDzGo1mFxi8wUSV0E5FWOd4BWsOyueRy-D+p@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: HOT updates in index-less tables (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: HOT updates in index-less tables
|
Список | pgsql-hackers |
On Sat, Nov 13, 2010 at 12:13 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > Hannu Krosing <hannu@2ndQuadrant.com> writes: >> On Sat, 2010-11-13 at 10:51 -0500, Tom Lane wrote: >>> If a table has no indexes, we will always decide that any same-page >>> update operation is a HOT update, since obviously it isn't modifying >>> any indexed columns. But is there any benefit to doing so? > >> If we do the in-page "mini vacuum" even without HOT, then there should >> be no benefit from index-less HOT updates. > > AFAICS we do: heap_update marks the page as prunable whether it's a HOT > update or not. The only difference between treating the update as HOT vs > not-HOT is that if there was more than one HOT update, the intermediate > tuples could be completely reclaimed by page pruning (ie, their line > pointers go away too). With not-HOT updates, the intermediate line > pointers would have to remain in DEAD state until vacuum, since page > pruning wouldn't know if there were index entries pointing at them. > But that seems like a pretty tiny penalty. I'm not at all convinced that's a tiny penalty. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: