Re: HOT updates & REDIRECT line pointers
От | Tom Lane |
---|---|
Тема | Re: HOT updates & REDIRECT line pointers |
Дата | |
Msg-id | 12659.1332374988@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | HOT updates & REDIRECT line pointers (Robert Haas <robertmhaas@gmail.com>) |
Ответы |
Re: HOT updates & REDIRECT line pointers
|
Список | pgsql-hackers |
Robert Haas <robertmhaas@gmail.com> writes: > Specifically, I'm wondering if we couldn't get away with rearranging > things so that the root line pointer (which has index entries) points > to the actual tuple, and the other line pointer (which can't have any > index entries) gets marked UNUSED. This would amount to changing the TID of the live row. In the past we have considered that that can only be allowed when holding an exclusive lock on the table (a la old-style VACUUM FULL). An example of the sort of situation where it'd be dangerous is an UPDATE involving a join, which might read a tuple-to-be-updated (including its TID), then release pin on that page for awhile while going about its business with the join, and eventually expect to come back and find the tuple still at the same TID. I believe there are applications that similarly expect a TID that they've fetched to remain valid for as long as they're holding some type of lock on the table or row. regards, tom lane
В списке pgsql-hackers по дате отправления: