> Vadim, can you remind me what UNDO is used for?
Ok, last reminder -:))
On transaction abort, read WAL records and undo (rollback)
changes made in storage. Would allow:
1. Reclaim space allocated by aborted transactions.
2. Implement SAVEPOINTs. Just to remind -:) - in the event of error discovered by server - duplicate key, deadlock,
commandmistyping, etc, - transaction will be rolled back to the nearest implicit savepoint setted just before query
execution;- or transaction can be aborted by ROLLBACK TO <savepoint_name> command to some explicit savepoint setted
byuser. Transaction rolled back to savepoint may be continued.
3. Reuse transaction IDs on postmaster restart.
4. Split pg_log into small files with ability to remove old ones (which do not hold statuses for any running
transactions).
Vadim