Robert Haas <robertmh...@gmail.com> writes: > On Mon, Jun 20, 2016 at 5:59 PM, Andres Freund <and...@anarazel.de> wrote: >> Consider what happens if we, after restarting at l2, notice that we >> can't actually insert, but return in the !HeapTupleMayBeUpdated >> branch.
> OK, I see what you mean. Still, that doesn't seem like such a > terrible cost. If you try to update a tuple and if it looks like you > can update it but then after TOASTing you find that the status of the > tuple has changed such that you can't update it after all, then you > might need to go set xmax = MyTxid() on all of the TOAST tuples you > created (whose CTIDs we could save someplace, so that it's just a > matter of finding them by CTID to kill them). ... and if you get an error or crash partway through that, what happens? regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers