- Crash before 1: update not recorded anywhere.
- Crash between 1 and 2: Undo is stored, but there is no change to undo. Harmless.
- Crash between 2 and 3: The element's new value can be reverse by the undo record.
- Crash after 3: The transaction is committed, and the update
is safe in the database. (Undo won't be needed.)