Re: [HACKERS] Bogus "Non-functional update" notices
От | dg@illustra.com (David Gould) |
---|---|
Тема | Re: [HACKERS] Bogus "Non-functional update" notices |
Дата | |
Msg-id | 9807291605.AA03368@hawk.illustra.com обсуждение исходный текст |
Ответ на | Re: [HACKERS] Bogus "Non-functional update" notices (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-hackers |
> Vadim Mikheev <vadim@krs.ru> writes: > > Tom Lane wrote: > >> Another thing that struck me while looking at the update code is that > >> an update deletes the old tuple value, then inserts the new value, > >> but it doesn't bother to delete any old index entries pointing at the > >> old tuple. ISTM that after a while, there are going to be a lot of old > >> index entries pointing at dead tuples ... or, perhaps, at *some other* > >> live tuple, if the space the dead tuple occupied has been reused for > >> something else. > > > Vacuum deletes index tuples before deleting heap ones... > > Right, but until you've done a vacuum, what's stopping the code from > returning wrong tuples? I assume this stuff actually works, I just > couldn't see where the dead index entries get rejected. > > regards, tom lane > Without checking the code, I suspect that dead rows are visible though the index (they had to be to make time travel work), but do not match the time qual so are not "seen". -dg David Gould dg@illustra.com 510.628.3783 or 510.305.9468 Informix Software (No, really) 300 Lakeside Drive Oakland, CA 94612 - If simplicity worked, the world would be overrun with insects. -
В списке pgsql-hackers по дате отправления: