• Teodor Sigaev's avatar
    Fix bundle bugs of GIN: · 853d1c31
    Teodor Sigaev authored
    - Fix possible deadlock between UPDATE and VACUUM queries. Bug never was
      observed in 8.2, but it still exist there. HEAD is more sensitive to
      bug after recent "ring" of buffer improvements.
    - Fix WAL creation: if parent page is stored as is after split then
      incomplete split isn't removed during replay. This happens rather rare, only
      on large tables with a lot of updates/inserts.
    - Fix WAL replay: there was wrong test of XLR_BKP_BLOCK_* for left
      page after deletion of page. That causes wrong rightlink field: it pointed
      to deleted page.
    - add checking of match of clearing incomplete split
    - cleanup incomplete split list after proceeding
    
    All of this chages doesn't change on-disk storage, so backpatch...
    But second point may be an issue for replaying logs from previous version.
    853d1c31
ginxlog.c 16.3 KB