> > > What are the problems with just shuffling the last (and only
visible)
> > > tuple to replace the HOT-hain root and be done with it ?
> >
> > ctid stops being a reliable identifier.
A backend selecting the row by ctid would need to take one step to
the root slot to get at the tuple. This does seem possible if the
tuples got swapped.
The old "current version" slot would need to become RECENTLY_DEAD
and could not be removed right away. It also needs a flag to
denote that the one step is necessary.
It sure would be nice if a root could be reused during regular vacuum,
(even if it were only possible under very restricted conditions,
that eventually apply).
Andreas