On Thu, Jul 4, 2019 at 5:24 PM Amit Kapila <amit.kapila16@gmail.com> wrote:
>
PFA, the latest version of the undo interface and undo processing patches.
Summary of the changes in the patch set
1. Undo Interface
- Rebased over latest undo storage code
- Implemented undo page compression (don't store the common fields in
all the records instead we get from the first complete record of the
page).
- As per Robert's comment, UnpackedUndoRecord is divided in two parts,
a) All fields which are set by the caller.
b) Pointer to structures which are set internally.
- Epoch and the Transaction id are unified as full transaction id
- Fixed handling of dbid during recovery (TODO in PrepareUndoInsert)
Pending:
- Move loop in UndoFetchRecord to outside and test performance with
keeping pin vs pin+lock across undo records. This will be done after
testing performance over the zheap code.
- I need to investigate whether Discard checking can be unified in
master and HotStandby in UndoFetchRecord function.
2. Undo Processing
- Defect fix in multi-log rollback for subtransaction.
- Assorted defect fixes.
Others
- Fixup for undo log code to handle full transaction id in
UndoLogSlot for discard and other bug fixes in undo log.
- Fixup for Orphan file cleanup to pass dbid in PrepareUndoInsert
--
Regards,
Dilip Kumar
EnterpriseDB: http://www.enterprisedb.com