> Problem is how to move tuple from page to another and keep indexes in sync.
> One solution is to perform some think like "update" operation on the tuple.
> But you need exclusive lock on the page and pin counter have to be zero. And
> question is where it is safe operation.
But doesn't this problem go away if you do it in a transaction? You
set xmax on the old tuple, write the new tuple, and add index entries
just as you would for a normal update.
When the old tuple is no longer visible to any transaction, you nuke it.
...Robert