• Alvaro Herrera's avatar
    Fix pg_upgrade's multixact handling (again) · 669c7d20
    Alvaro Herrera authored
    We need to create the pg_multixact/offsets file deleted by pg_upgrade
    much earlier than we originally were: it was in TrimMultiXact(), which
    runs after we exit recovery, but it actually needs to run earlier than
    the first call to SetMultiXactIdLimit (before recovery), because that
    routine already wants to read the first offset segment.
    
    Per pg_upgrade trouble report from Jeff Janes.
    
    While at it, silence a compiler warning about a pointless assert that an
    unsigned variable was being tested non-negative.  This was a signed
    constant in Thomas Munro's patch which I changed to unsigned before
    commit.  Pointed out by Andres Freund.
    669c7d20
multixact.c 95.9 KB