• Tom Lane's avatar
    Fix ginEntryInsert's counting of GIN leaf tuples. · ec28808b
    Tom Lane authored
    As the code stands, nEntries counts the number of ginEntryInsert()
    calls, so that's what you end up with at the end of a GIN index build.
    However, ginvacuumcleanup() recomputes nEntries as the number of
    surviving leaf tuples, and that's generally consistent with the way that
    gincostestimate() uses the value.  So let's clearly define nEntries
    as the number of leaf tuples, and therefore adjust ginEntryInsert() to
    increment it only when we make a new one, not when we add TIDs into an
    existing tuple or posting tree.
    
    In practice this inconsistency probably has little impact, so I don't
    feel a need to back-patch.
    
    Insung Moon and Keisuke Kuroda
    
    Discussion: https://postgr.es/m/CAEMmqBuH_O-oXL+3_ArQ6F5cJ7kXVow2SGQB3HRacku_T+xkmA@mail.gmail.com
    ec28808b
gininsert.c 14.5 KB