On Tue, Mar 23, 2021 at 1:31 PM Michael Paquier <mich...@paquier.xyz> wrote: > > On Mon, Mar 22, 2021 at 12:17:37PM +0900, Masahiko Sawada wrote: > > I've updated the patch. I saved the index names at the beginning of > > heap_vacuum_rel() for autovacuum logging, and add indstats and > > nindexes to LVRelStats. Some functions still have nindexes as a > > function argument but it seems to make sense since it corresponds the > > list of index relations (*Irel). Please review the patch. > > Going back to that, the structure of the static APIs in this file make > the whole logic a bit hard to follow, but the whole set of changes you > have done here makes sense. It took me a moment to recall and > understand why it is safe to free *stats at the end of > vacuum_one_index() and if the index stats array actually pointed to > the DSM segment correctly within the shared stats. > > I think that there is more consolidation possible within LVRelStats, > but let's leave that for another day, if there is any need for such a > move.
While studying your patch (v5-index_stat_log.patch) I found we can polish the parallel vacuum code in some places. I'll try it another day. > > To keep it short. Sold. Thank you! Regards, -- Masahiko Sawada EDB: https://www.enterprisedb.com/